Formal Verification for Real-World Cryptographic Protocols and Implementations - Inria - Institut national de recherche en sciences et technologies du numérique
Thèse Année : 2018

Formal Verification for Real-World Cryptographic Protocols and Implementations

Vérification formelle des protocoles et des implementations cryptographiques

Nadim Kobeissi

Résumé

Individuals and organizations are increasingly relying on the Web and on user-facing applications for use cases such as online banking, secure messaging, document sharing and electronic voting. To protect the confidentiality and integrity of these communications, these systems depend on authentication and authorization protocols, on application-level cryptographic constructions and on transport-layer cryptographic protocols. However, combining these varied mechanisms to achieve high-level security goals is error-prone and has led to many attacks even on sophisticated and well-studied applications. This thesis aims to develop methods and techniques for reasoning about, designing and implementing cryptographic protocols and secure application components relevant to some of the most frequently used cryptographic protocols and applications. We investigate and formalize various notions of expected guarantees and evaluate whether some of the most popular secure channel protocols, such as secure messaging protocols and transport protocols often operating at the billion-user scale, are capable of meeting these goals. In this thesis, we ask: can existing major paradigms for formal protocol verification serve as guidelines for the assessment of existing protocols, the prototyping of protocols being designed, and the conception of entirely new protocols, in a way that is meaningful and reflective of their expected real-world properties? And can we develop novel frameworks for formal verification and more secure implementation based on these foundations? We propose new formal models in both symbolic and computational formal verification frameworks for these protocols and applications. In some of the presented work, we obtain a verification methodology that starts from the protocol and ends at the implementation code. In other parts of our work, we develop a dynamic framework for generating formal verification models for any secure channel protocol described in a lightweight syntax. Ultimately, this thesis presents formal verification approaches for existing protocols reaching towards their implementation as well as methods for prototyping and formally verifying new protocols as they are being drafted and designed.
Les particuliers et les organisations comptent de plus en plus sur le Web et sur les applications destinées aux utilisateurs pour des cas d'utilisation comme les services bancaires en ligne, la messagerie sécurisée, le partage de documents et le vote électronique. Pour protéger la confidentialité et l'intégrité de ces communications, ces systèmes dépendent de protocoles d'authentification et d'autorisation, de constructions cryptographiques au niveau de l'application et de protocoles cryptographiques au niveau du transport. Cependant, la combinaison de ces divers mécanismes pour atteindre des objectifs de sécurité de haut niveau est sujette à l'erreur et a conduit à de nombreuses attaques, même contre des applications sophistiquées et bien étudiées. Cette thèse vise à développer des méthodes et des techniques de raisonnement, de conception et de mise en œuvre de protocoles cryptographiques et de composants d'application sécurisés pertinents pour certains des protocoles et applications cryptographiques les plus fréquemment utilisés. Nous étudions et formalisons diverses notions de garanties attendues et évaluons si certains des protocoles de canaux sécurisés les plus populaires, tels que les protocoles de messagerie sécurisée et les protocoles de transport fonctionnant souvent à l'échelle du milliard d'utilisateurs, sont capables d'atteindre ces objectifs. Dans cette thèse, nous posons la question suivante : les principaux paradigmes existants pour la vérification formelle des protocoles peuvent-ils servir de lignes directrices pour l'évaluation des protocoles existants, le prototypage des protocoles en cours de conception et la conception de protocoles entièrement nouveaux, d'une manière qui soit significative et qui reflète leurs propriétés réelles prévues ? Et pouvons-nous développer de nouveaux cadres pour une vérification formelle et une mise en œuvre plus sûre sur la base de ces fondements ? Nous proposons de nouveaux modèles formels dans des cadres de vérification formelle à la fois symboliques et calculatoires pour ces protocoles et applications. Dans certains des travaux présentés, nous obtenons une méthodologie de vérification qui part du protocole et se termine au code d'implémentation. Dans d'autres parties de notre travail, nous développons un cadre dynamique pour générer des modèles de vérification formels pour tout protocole de canal sécurisé décrit dans une syntaxe légère. En fin de compte, cette thèse présente des approches de vérification formelle pour les protocoles existants en vue de leur mise en œuvre, ainsi que des méthodes de prototypage et de vérification formelle de nouveaux protocoles en cours de rédaction et de conception.
Fichier principal
Vignette du fichier
thesis.pdf (3.1 Mo) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)

Dates et versions

tel-03245433 , version 1 (22-12-2018)
tel-03245433 , version 2 (02-02-2019)
tel-03245433 , version 3 (21-05-2021)
tel-03245433 , version 4 (01-06-2021)

Identifiants

  • HAL Id : tel-03245433 , version 3

Citer

Nadim Kobeissi. Formal Verification for Real-World Cryptographic Protocols and Implementations. Computer Science [cs]. Inria Paris; Ecole Normale Supérieure de Paris - ENS Paris, 2018. English. ⟨NNT : ⟩. ⟨tel-03245433v3⟩
2789 Consultations
5352 Téléchargements

Partager

More