Niveaux d'attaques
La résistance à un niveau d'attaque permet de caractériser la sécurité d’un schéma de chiffrement et sont données dans la définition des primitives cryptographiques. La cryptanalyse permet de s’assurer qu’un schéma donné est résistant aux différentes attaques. C'est un formalisme pour décrire avec précision la résistance d’un schéma par rapport à la puissance d’un attaquant.
Un des axiomes fondamentaux de la cryptographie, énoncé pour la première fois par Auguste Kerckhoffs au XIXe siècle, est que l'ennemi possède tous les détails de l'algorithme et qu'il ne lui manque que la clef spécifique pour le chiffrement. Pour un article détaillé, voir principe de Kerckhoffs.
Goldwasser et Micali ont démontré que la notion de sécurité par rapport à une attaque à texte clair choisi est équivalente à celle de sécurité sémantique[1] pour un chiffrement.
Chiffrement
Les définitions de sécurité sont construites sur un modèle tel que « XYZ-ZYX », où XYZ désigne le type d’attaque (distinguer deux messages, distinguer par rapport à l'uniforme, récupération de clef,…) et ZYX la puissance de l’attaquant (accès aux clefs uniquement, accès à texte clairs aléatoires, accès à texte clair choisis…)[2]. Par exemple le cryptosystème de ElGamal est indistinguable face aux attaques à clair choisi, mais pas à chiffré choisi (dû à sa malléabilité).
Attaque à texte chiffré seulement (ciphertext-only attack)
Le cryptanalyste dispose du texte chiffré de plusieurs messages, tous ayant été chiffrés avec le même algorithme. La tâche du cryptanalyste est de retrouver le plus grand nombre de messages clairs possibles, ou mieux encore de retrouver la ou les clefs qui ont été utilisées, ce qui permettrait de déchiffrer d'autres messages chiffrés avec ces mêmes clefs.
Attaque Ă texte clair connu (known-plaintext attack)
Le cryptanalyste a non seulement accès aux textes chiffrés de plusieurs messages, mais aussi aux textes clairs correspondants. La tâche est de retrouver la ou les clefs qui ont été utilisées pour chiffrer ces messages ou un algorithme qui permet de déchiffrer d'autres messages chiffrés avec ces mêmes clefs.
Attaque Ă texte clair choisi (chosen-plaintext attack)
Le cryptanalyste a non seulement accès aux textes chiffrés et aux textes clairs correspondants, mais de plus il peut choisir les textes en clair. Cette attaque est plus efficace que l'attaque à texte clair connu, car le cryptanalyste peut choisir des textes en clair spécifiques qui donneront plus d'informations sur la clef.
Attaque à texte chiffré choisi (chosen-ciphertext attack)
Le cryptanalyste peut choisir différents textes chiffrés à déchiffrer. Les textes déchiffrés lui sont alors fournis. Par exemple, le cryptanalyste a un dispositif qui ne peut être désassemblé et qui fait du déchiffrement automatique. Sa tâche est de retrouver la clef.
Ronald Cramer et Victor Shoup ont notamment exposé la différence (minime) entre IND-CCA1 et IND-CCA2[3].
Il existe des méthodes pour construire des schémas de chiffrement IND-CCA2 à partir de systèmes IND-CPA en utilisant des fonctions de hachage universelles à sens unique[4].
Signature
De manière similaire au chiffrement, la sécurité d’un schéma de signature numérique prend une forme du type « YXZ-ZXY », YXZ étant le type d'attaques, pouvant la récupération de la clef, l’usurpation d’identité, ou la falsification d’une signature ; et ZXY pouvant être similairement au chiffrement un accès aux clefs seuls, une attaque passive, un accès à un oracle de signature[5] - [6]…
Notes et références
Note
Cet article contient tout ou une partie d’un document provenant du site Ars Cryptographica. L’auteur autorise Wikipédia à utiliser les textes présents sur son site si la source originale est mentionnée.
Références
- Goldwasser et Micali 1984, p. 270–299.
- Katz et Lindell 2014, Section 3. Private-Key Encryption and Pseudorandomness.
- (en) Ronald Cramer et Victor Shoup, « Design and Analysis of Practical Public-Key Encryption Schemes Secure against Adaptive Chosen Ciphertext Attack », Cryptology ePrint Archive, no 108,‎ , p. 69 (lire en ligne, consulté le )
- Cramer et Shoup 2003.
- Ohta et Okamoto 1998.
- Kiltz, Masny et Pan 2016, Figure 1.
Annexes
Bibliographie
- [Cramer et Shoup 2003] (en) Ronald Cramer et Victor Shoup, « Design and Analysis of Practical Public-Key Encryption Schemes Secure against Adaptive Chosen Ciphertext Attack », SIAM Journal of Computing, SIAM,‎
- [Goldwasser et Micali 1984] (en) Shafi Goldwasser et Silvio Micali, « Probabilistic encryption », Journal of Computer and System Sciences, vol. 28, no 2,‎ (DOI 10.1016/0022-0000(84)90070-9, lire en ligne [PDF]).
- [Katz et Lindell 2014] (en) Jonathan Katz et Yehuda Lindell, Introduction to Modern Cryptography, 2nd Edition, Boca Raton, Chapman and Hall, , 583 p. (ISBN 978-1-4665-7026-9, lire en ligne)
- [Kiltz, Masny et Pan 2016] (en) Eike Kiltz, Daniel Masny et Jiaxin Pan, « Optimal Security Proofs for Signatures from Identification Schemes », Crypto,‎ (DOI 10.1007/978-3-662-53008-5_2, lire en ligne)
- [Ohta et Okamoto 1998] (en) Kazuo Ohta et Tatsuaki Okamoto, « On concrete security treatment of signatures derived from identification », Crypto, Springer, vol. 1462,‎ , p. 354–369 (DOI 10.1007/BFb0055741)