« Don’t roll your own crypto »: les méthodes formelles au service de la sécurité

Présenté par Theophile Wallez.

2023

Horaire : 14:00–14:15

Salle : Pastel 1.

Catégorie : Méthodes et outils de développement

Niveau recommandé : Intermédiaire.

Résumé

On entend souvent « don’t roll your own crypto ». Mais pourquoi ?
Parce que concevoir et implémenter un protocole cryptographique, c’est très complexe !
Les failles de sécurité peuvent se loger aussi bien dans les primitives cryptographiques (comme le chiffrement ou les signatures) que dans le protocole qui repose sur ces primitives.
Ces failles peuvent se trouver non seulement dans le code, mais aussi dans la spécification du protocole ou de la primitive.

Les méthodes formelles fournissent des outils qui permettent de prouver l’absence de telles failles.
Ces méthodes, si elles sont utilisées principalement par des chercheurs ont des applications bien réelles pour valider et sécuriser les protocoles que vous utilisez quotidiennement.

Nous verrons comment des failles comme Heartbleed [1], le buffer overflow dans SHA-3 [2], ou encore les multiples failles de Matrix [3] auraient pu être évitées grâce aux méthodes formelles, et je partagerai mon expérience avec l’application de ces méthodes sur le futur protocole de messagerie sécurisé MLS [4].

– [1] https://heartbleed.com/
– [2] https://mouha.be/sha-3-buffer-overflow/
– [3] https://nebuchadnezzar-megolm.github.io/
– [4] https://eprint.iacr.org/2022/1732

Replay