Spécification et vérification de propriétés Typestates avec Frama-C
Résumé
Les logiciels pour systèmes critiques nécessitent des garanties fortes de sûreté et de sécurité, un bogue pouvant avoir de lourdes conséquences. Nous avons donc besoin de méthodes de vérification puissantes, comme les méthodes
formelles. Frama-C est une plateforme open-source d’analyse formelle de code C, développée au CEA-List. Elle est accompagnée par ACSL, un langage de spécification formelle basé sur les contrats de fonctions.
Récemment, un greffon Frama-C a été réalisé pour vérifier des propriétés Typestates, qui restreignent les opérations possibles sur une structure de données, en fonction de son état courant. Ce greffon instrumente le programme original avec du code fantôme et des contrats ACSL, afin d’utiliser les analyseurs standard de Frama-C. L’objectif principal de la thèse est de proposer une formalisation de cette instrumentation et de prouver sa correction. Pour cela, nous nous appuyons sur le méta-langage Skel, l’outil Necrocoq, et l’assistant de preuve Coq.
Domaines
Informatique [cs]
Origine : Fichiers produits par l'(les) auteur(s)