1.18k likes | 1.73k Views
Présentation des algorithmes de cryptographie. AES & ECC. Groupe 10. Présentation du 05/04/2008. Introduction. Introduction. Importance de la cryptographie aujourd’hui. Société de plus en plus informatisée.
E N D
Présentation des algorithmes de cryptographie AES & ECC Groupe 10 Présentation du 05/04/2008 Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
Introduction Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
Introduction • Importance de la cryptographie aujourd’hui. • Société de plus en plus informatisée. • Loi de Moore: évolution de l’informatique et des technologies engendre une évolution des méthodes de sécurisation de celle-ci. • Mention AES et ECC dans la norme « Suite B » de la NSA publiée en février 2005. Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
Plan • Concepts • Cryptographie symétrique • AES • Historique • Algorithme AES • Usages & considérations économiques • Cryptographie asymétrique • ECC • Historique • Principe • Usages & considérations économiques • Conclusion Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
Concepts Concepts nécessaires à la compréhension du sujet Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
Concepts Cryptologie Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
Concepts Cryptographie AES ECC Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
ConceptsVocabulaire • Chiffrer : action de transcrire un message en un langage secret • Déchiffrer : Traduire en clair un message chiffré • Attention aux anglicismes « crypter » et « décrypter » basés sur le terme « encryption ». Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
ConceptsChiffrement par Blocs • Interprétation d’un flux ou d’un ensemble de données comme un flux de bits. • Découpage en segments, appelés blocs, d’un nombre de bits définis. • Permet donc de chiffrer « localement », de faire abstraction de l’ensemble. Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
Cryptographie symétrique Cryptographie à clé unique Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
TerminologieChiffrage Symétrique • Aussi dit « à clé secrète » • But: assurer la confidentialité de données • Permet à partir d’une seul clé secrète de chiffrer et de déchiffrer des données • Problème de distribution des clés • Quelques exemples: • Rot13 • DES Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
TerminologieChiffrage Symétrique Milieu non sécurisé Alice Bob Utilisation de la même clé de chiffrement par les deux interlocuteurs Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
TerminologieChiffrage Symétrique • Exemple: ROT13 • Décalage de chaque lettre de l’alphabet latin de 13 lettres Phase de chiffrage Phase de déchiffrage a t e a u b a t e a u Message en clair b a b c m n o x y z … … Clé de chiffrement n o p z a b k l m o n Message en chiffré g r n h Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
AES L’algorithme « Advanced Encryption Standard » Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
HistoriqueDES • DES pour « Data Encryption Standard ». • Introduit en 1977. • Chiffrage symétrique par blocs • Dérivé de l’algorithme Lucifer d’IBM • Fonctionne sur des blocs de 64 bits et des clés de 56 bits • Adapté aux besoins techniques de l’époque. Aujourd’hui les capacités et efficacités matérielles sont meilleures. • Matériel spécialisé peut déterminer une clé DES 56 bits en seulement quelques heures. • Besoinévident d’un nouveau standard de chiffrement. Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
HistoriqueLe concours AES • 1997: NIST lance la sélection de l’Advanced Encryption Standard qui remplacera le DES • Sélection des algorithmes s’est faite par • Sécurité prouvé contre des classes d’attaques • Rapport coût-efficacité (matériel et logiciel) • Architecture algorithmique • Propriété intellectuelle • Présenté sous forme de concours: • Deux tours de sélection • 21 candidats (grandes entreprises, universitaires, et individus) • 5 finalistes (MARS, RC6, Rijndael, Serpent, Twofish) • Ouverture à la communauté par le biais de groupes de discussion et de conférences Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
HistoriqueLe concours AES Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
HistoriqueLe concours AES • Présenté sous forme de concours de deux tours de sélection • 21 candidats pour le premier tour de sélection • 5 finalistes • MARS proposé par IBM • RC6 proposé par RSA Laboratories • Rijndael proposé par Joan Daeman et Vincent Rijmen • Serpent proposé par Ross Anderson, Eli Biham et Lars Knudsen • Twofish proposé par Bruce Schneier Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
HistoriqueLe concours AES “Rijndael provides consistently high-end performance for encryption, decryption and key setup, although performance decreases for the 192- and 256-bit key sizes.” Scores relatifs du deuxième tour de sélection: 1 = mauvais 2 = moyen 3 = bon Source : Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
AESL’algorithme de base: Rijndael Joan Daeman et Vincent Rijmen • Concepteurs belges: • Vincent Rijmen • Joan Daeman • Publié en 1998 • Chiffrage symétrique par blocs • Dérivé de l’algorithme Square (des mêmes concepteurs) • Le Rijndael: blocs de 128, 160, 192, 224 ou 256 bits, clé de 128, 160, 192, 224 ou 256 bits, et un nombre de rondes allant de 10 à 14. • L’AES est un sous-ensemble: blocs de 128bits, clés de 128, 192, 256 bits, et 10, 12 ou 14 rondes. Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
AESL’algorithme de base: Rijndael AES Tableau de nombre de rondes pour le Rijndael, déterminé en fonction de la taille des blocs et de la taille de la clé Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
AESComparatif DES AES * - Il y a 95 caractères ASCII affichables ** - Temps affiché pour une recherche sur 100% des clés. ¨En théorie, une clé peut être trouvée après 50% de recherche. Source : Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
AESAperçu général bloc départ Clé de chiffrage ronde initiale AddRoundKey SubBytes Le chiffrement se fait sur 10 rondes composées de 4 étapes. ShiftRows 9 rondes MixColumns Clé de ronde n AddRoundKey SubBytes ronde finale Clé de ronde 10 ShiftRows AddRoundKey 0 ronde 7 9 4 3 2 1 10 8 6 5 bloc arrivé Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
AESSubBytes Animation basée sur une réalisation d’Enrique Zabala. 19 a0 9a e9 19 d4 3d f4 c6 f8 e3 e2 8d 48 d4 e0 b8 1e be 2b 2a 08 27 bf b4 41 S-BOX 11 98 5d 52 Substituer chaque élément du bloc de données par l’élément correspondant dans la table de substitution (notée S-Box) telles que définie par Rijndael. ae f1 e5 30 Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
AESShiftRows Animation basée sur une réalisation d’Enrique Zabala. d4 e0 b8 1e 27 bf b4 41 Décalage d’un octet Décalage de 2 octets 11 98 5d 52 30 Décalage de 3 octets ae f1 e5 Effectuer un décalage cyclique sur chaque ligne en partant de la gauche, de 0 éléments pour la première ligne, puis 1 élément pour la deuxième, en incrémentant le nombre d’élément à chaque ligne. Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
AESMixColumns Animation basée sur une réalisation d’Enrique Zabala. d4 04 e0 e0 48 b8 1e 28 . bf 66 cb b4 41 f8 27 06 = 81 5d 52 19 11 d3 98 26 30 e5 ae 9a f1 7a e5 4c Multiplier chaque colonne du bloc par un polynôme de degré 3 modulo un polynôme de degré 4 (tous deux constants et inversibles, tels que définis par Rijndael), ce qui revient à faire une multiplication matricielle pour chacune des colonnes. Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
AESAddRoundKey Animation basée sur une réalisation d’Enrique Zabala. 04 a4 68 e0 6b 48 02 28 a0 88 23 2a 9c 66 9f cb f8 5b 06 6a fa 54 a3 6c 7f 81 19 35 ea d3 50 26 fe 2c 39 76 (XOR) e5 f2 2b 9a 43 7a 4c 49 17 b1 39 05 Clé de ronde Application d’un XOR terme-à-terme avec la clé de ronde. Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
AESCréation des clés de rondes … 28 2b ab 28 09 09 ae ae 7e f7 cf cf 23 88 c9 a0 f2 7a 23 b6 d0 e1 2a a0 88 73 d2 d2 15 15 4f 4f 96 c2 59 a3 fa 54 6c fa 54 a3 14 63 3f ee a6 a6 16 88 3c 3c 2c fe 0c 25 f9 0c 39 fe 76 2c 95 39 b9 f6 2b Clé de ronde 1 Clé de ronde 2 Clé de ronde 10 Clé de chiffrage 39 b1 17 05 b1 17 43 f2 39 7f 89 a8 a6 c8 09 cf 7e 4f = = 84 15 3c eb 16 8a 01 01 02 04 08 10 20 40 1b 80 36 Animation basée sur une réalisation d’Enrique Zabala. 00 00 00 00 00 00 00 00 00 00 Tableau de constantes de rondes 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
AESUsages • Chiffrement de documents confidentiels • L’algorithme AES estutilisé pour protéger des documents confidentiels. • Voix sur IP: Skype • “Skype uses AES (Advanced Encryption Standard), […] which is used by U.S. Government organizations to protect sensitive, information.” • WiFi: pour le WPA2 (norme IEEE 802.11i) • Utilise l’algorithme AES plutôt que RC4 (utilisé par WEP et WPA) • Compression de fichiers: WinRAR et WinZip The Committee on National Security Systems Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
AESAutres standards • NESSIE (New European Schemes for Signatures, Integrity and Encryption) • Standard définit par l’Union Européenne • CRYPTREC (Cryptography Research and Evaluation Committee) • Standard japonais • Recommandent tous deux l’utilisation de l’AES Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
AESAttaques • Attaque exhaustive (brute force) • Attaques sur des versions simplifiée • Certaines attaques effectuées avec succès en réduisant le nombre de rondes à 7, 8, et 9 (en ajoutant une contrainte supplémentaire sur la clé) publiées en 2000 • Attaques sur la version complète • Méthode XSL a suscité un débat au sein de la communauté de la cryptologie Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
AESAttaque par la méthode XSL • Publiée par Nicolas Courtois et Josef Pieprzyk en 2002 sous-entend pouvoir casser AES. • Attaque porte sur l’architecture de chiffrage du Rijndael. • Si possible, est une « certificationalweakness »: requiert un nombre trop important de ressources, donc ne pose (actuellement) pas de problème à la sécurité réelle d’un système. • Démontré en 2004 par Claus Diem comme ne pouvant pas casser l’AES. Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
AESAttaque par la méthode XSL • En 2004, lors de la conférence AES 4 à Bonn • Vincent Rijmen, co-concepteur du Rijndael: "The XSL attack is not an attack. It is a dream.“ • Nicolas Courtois, auteur de la méthode XSL, répond: "It will become your nightmare". Sources : Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
AESSWOT Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
Cryptographie asymétrique Cryptographie à double clés. Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
Chiffrage AsymétriqueIdée initiale • Initié dans les années 70 • Whyfield Diffie • Martin Hellman • Ralph Merkle • But : Permettre les échanges chiffrés sans entente préalable sur une clé commune Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
Chiffrage AsymétriqueIdée initiale Milieu non sécurisé Alice Bob A A A B B B B Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
Chiffrage AsymétriquePrincipe • Basé sur une paire de clés (publique et privée) • Fonction mathématique « à sens unique » liant l’une à l’autre • Multiplication vs. Factorisation • Exponentiation vs. Logarithme • Plus dur est l’opération inverse (« reverse ») par rapport à l’opération de base (« forward »), plus l’algorithme peut être qualifié de sûr Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
Chiffrage AsymétriquePrincipe • Exemple Multiplication vs. Division : • 165*285 = 47025 • 47025 = x * y ? • Exemple Exponentiation vs. Logarithme : • 17^13 = 9904578032905937 • logx 9904578032905937 = y ? Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
Chiffrage AsymétriqueUsages • 3 utilisations : • Chiffrage / déchiffrage • Signature numérique (Digital Signature) • Echange de clé (Key Exchange) • Garantie : • Authentification • Confidentialité • Intégrité • Non-répudiation Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
Chiffrage AsymétriqueUsages: Chiffrage / Déchiffrage Clé publique de Bob Clé privée de Bob • Alice peut verrouiller un message avec le cadenas de Bob • Seul Bob peut ouvrir le cadenas Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
Chiffrage AsymétriqueUsages: Chiffrage / Déchiffrage Source : Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
Chiffrage AsymétriqueUsages : Signature numérique Bob Alice OK ! From:AliceBonjour Bob Signature From:AliceBonjour Bob Signature Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
Chiffrage AsymétriqueUsages : Signature numérique Alice Bob BAD! From:AliceBob, tu es renvoyé Signature Eve From:AliceBob, tu es renvoyé Signature Eve Eve Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
Chiffrage AsymétriqueUsages : Echange de clé • Permet la discussion sans accord préalable sur une clé commune • Peut être utilisé pour communiquer une clé de chiffrage symétrique de façon confidentielle (algorithmes symétriques plus efficaces) Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
ECC « Elliptic Curve Cryptography » Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
Historique de l’ECC • Idée d’utiliser les courbes elliptiques pour la cryptographie née en 1985 • Victor Miller (IBM) • Neal Koblitz (University of Washington) • Libre, grand potentiel, mais trop lent • Certicom • Société Canadienne crée en 1985 • Nouvelles implémentations des algorithmes ECC • Premier produit commercial basé sur ECC en 1997 • Place prépondérante dans l’exploitation de l’ECC • En relation avec N. Koblitz N. Koblitz Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
Historique de l’ECC • Normalisé par IEEE, NESSIE, FIPS, ISO, ANSI X9F, … • Contrat de 25 million de dollars avec NSA en 2003 • Licence d’utilisation pour toutes les agences gouvernementales • Licence d’utilisation pour les industries travaillant pour l’état Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
ECCMathématiques • Les courbes elliptiques sont définies sur tous les ensembles possibles (réels, complexes, entiers, …) • Equation d’une courbe Elliptique: • y² = x³ + ax + b Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009
ECCMathématiques Exemples de courbes : Source : Ricardo BELIN et Mathieu ROMARY, EPITA spécialisation TCOM 2009