• Media type: Text; E-Book; Electronic Thesis
  • Title: Specifying and verifying high-level requirements on large programs : application to security of C programs ; Spécifier et vérifier des exigences de haut niveau sur des programmes importants : application à la sécurité des programmes C
  • Contributor: Robles, Virgile [Author]
  • imprint: theses.fr, 2022-01-21
  • Language: English
  • Keywords: Specification language ; Frama-C ; Formal methods ; Vérification déductive ; Langage de spécification ; Méthodes formelles ; Deductive verification
  • Origination:
  • Footnote: Diese Datenquelle enthält auch Bestandsnachweise, die nicht zu einem Volltext führen.
  • Description: La spécification et la vérification d’exigences haut niveau (comme des propriétés de sécurité, telles que l’intégrité des données ou la confidentialité) reste un défi pour l’industrie, alors que les cahiers des charges en sont remplis. Cette thèse présente un cadre formel pour les exprimer appelé les meta-propriétés, décrites pour un langage de programmation abstrait, et centrées sur les propriétés liées aux manipulations de la mémoire et les invariants globaux. Ce cadre formel est appliqué au langage C avec HILARE, une extension d’ACSL, qui permet la spécification d’exigences haut niveau sur des programmes C de grande taille avec facilité. Des techniques de vérification pour HILARE, basées sur la génération d’assertions locales et la réutilisation des analyseurs de Frama-C existants, sont présentées et implantées dans le greffon MetAcsl pour Frama-C. Une méthodologie pour l’évaluation des propriétés de grands programmes est détaillée, articulant les méta-propriétés, les techniques de vérification et les particularités du C. Cette méthodologie est illustrée par un cas d’étude complexe : le bootloader de Wookey, un périphérique de stockage chiffré. Enfin, nous explorons une autre manière de vérifier une exigence de haut niveau en la déduisant à partir d’autres, via un système formel prouvé en Why3 et intégré dans MetAcsl. ; Specification and verification of highlevel requirements (such as security properties like data integrity or confidentiality) remains an important challenge for the industrial practice, despite being a major part of functional specifications. This thesis presents a formal framework for their expression called meta-properties, supported by a description on an abstract programming language, focusing on properties related to memory and global invariants. This framework is then applied to the C programming language, introducing the HILARE extension to ACSL, to allow easy specification of these requirements on large C programs. Verification techniques for HILARE, based on local assertion generation ...
  • Access State: Open Access