Plan Chapitre 3 - Algorithmes de chiffrement par bloc Alexandra Bruasse-Bac Introduction et généralités Les différents modes de chiffrement DES, AES Autres algorithmes : FEAL, IDEA, SAFER, RC5 Chapitre 3 - Algorithmes de chiffrement par bloc p. 1/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 2/3 Les bases Chiffrement par blocs à n-bits Introduction et généralités E :Σ n K Σ n Fonction de codage inversible Chapitre 3 - Algorithmes de chiffrement par bloc p. 3/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 4/3
Les bases Les bases Chiffrement par blocs à n-bits E :Σ n K Σ n Fonction de codage inversible C = E K (P ) P = D K (C) Chiffrement par blocs à n-bits E :Σ n K Σ n Fonction de codage inversible C = E K (P ) P = D K (C) Chiffrement par substitution avec un alphabet de grande taille Chapitre 3 - Algorithmes de chiffrement par bloc p. 4/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 4/3 Critères d efficacité Critères d efficacité Les critères d efficacité à prendre en compte sont : Niveau de sécurité estimé : résistance à la cryptanalyse. Les critères d efficacité à prendre en compte sont : Niveau de sécurité estimé : résistance à la cryptanalyse. Longueur de la clé : sécurité vs. coût de génération, transmission, stockage Chapitre 3 - Algorithmes de chiffrement par bloc p. 5/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 5/3
Critères d efficacité Critères d efficacité Les critères d efficacité à prendre en compte sont : Niveau de sécurité estimé : résistance à la cryptanalyse. Longueur de la clé : sécurité vs. coût de génération, transmission, stockage Débit Les critères d efficacité à prendre en compte sont : Niveau de sécurité estimé : résistance à la cryptanalyse. Longueur de la clé : sécurité vs. coût de génération, transmission, stockage Débit Taille des blocs : sécurité vs. complexité (coût d implémentation) Chapitre 3 - Algorithmes de chiffrement par bloc p. 5/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 5/3 Critères d efficacité Critères d efficacité Les critères d efficacité à prendre en compte sont : Niveau de sécurité estimé : résistance à la cryptanalyse. Longueur de la clé : sécurité vs. coût de génération, transmission, stockage Débit Taille des blocs : sécurité vs. complexité (coût d implémentation) Complexité de la fonction de cryptage : sécurité vs. coût (développement et hardware) Chapitre 3 - Algorithmes de chiffrement par bloc p. 5/3 Les critères d efficacité à prendre en compte sont : Niveau de sécurité estimé : résistance à la cryptanalyse. Longueur de la clé : sécurité vs. coût de génération, transmission, stockage Débit Taille des blocs : sécurité vs. complexité (coût d implémentation) Complexité de la fonction de cryptage : sécurité vs. coût (développement et hardware) Propagation des erreurs Chapitre 3 - Algorithmes de chiffrement par bloc p. 5/3
Pourquoi différents modes Chiffrement par blocs : bloc de n bits cryptés en blocs de n bits Les différents modes de chiffrement Chapitre 3 - Algorithmes de chiffrement par bloc p. 6/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 7/3 Pourquoi différents modes Chiffrement par blocs : bloc de n bits cryptés en blocs de n bits Comment crypter un message de longueur quelconque? Pourquoi différents modes Chiffrement par blocs : bloc de n bits cryptés en blocs de n bits Comment crypter un message de longueur quelconque? Le couper en blocs de n bits Chapitre 3 - Algorithmes de chiffrement par bloc p. 7/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 7/3
Pourquoi différents modes Chiffrement par blocs : bloc de n bits cryptés en blocs de n bits Comment crypter un message de longueur quelconque? Le couper en blocs de n bits Problèmes Pas la seule solution Pourquoi différents modes Chiffrement par blocs : bloc de n bits cryptés en blocs de n bits Comment crypter un message de longueur quelconque? Modes de Chiffrement : ECB (Electronic CodeBook) CBC (Cipher-Block Chaining) CFB (Cipher FeedBack) OFB (Output FeedBack) Chapitre 3 - Algorithmes de chiffrement par bloc p. 7/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 7/3 Mode ECB Mode CBC x j c 0 = IV n c j 1 E 1 clé clé E E 1 clé x j n n clé E c j 1 Cryptage c j x j = x j Décryptage n Cryptage c j x j = x j Décryptage Chapitre 3 - Algorithmes de chiffrement par bloc p. 8/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 9/3
Mode CFB Mode OFB r-bit shift r-bit shift r-bit shift O j 1 I j n I j c j 1 I j n I j c j 1 clé E r E clé clé E n E clé n r-bits de gauche O j r O j r-bits de gauche O j r O j x j x j c = x j r j Cryptage Décryptage x j r r Cryptage c j Décryptage x j = x j Chapitre 3 - Algorithmes de chiffrement par bloc p. 10/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 11/3 Principes de base Systèmes cryptographiques produit DES combine plusieurs transformations de sorte que la fonction de cryptage résultante soit plus sûre que ses composantes Chapitre 3 - Algorithmes de chiffrement par bloc p. 12/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 13/3
Systèmes cryptographiques produit Principes de base Systèmes cryptographiques produit Principes de base Réseau SP S S S S P S S S S P Réseau SP Chiffrement de Feistel avec { K i dérivée de K (L 0,R 0 ) (L k,r k ) L i = R i 1 R i = L i 1 f(r i 1,K i ) Chapitre 3 - Algorithmes de chiffrement par bloc p. 13/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 13/3 Principe du DES Principe du DES Chiffrement Feistel Groupement du texte en blocs de 64 bits Clé 56 bits (notée K) Chiffrement Feistel Groupement du texte en blocs de 64 bits Clé 56 bits (notée K) K 56 Proposé en 1975 Adopté en 1977 P 64 DES C Chapitre 3 - Algorithmes de chiffrement par bloc p. 14/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 14/3
Principe du DES Principe du DES Chiffrement Feistel Groupement du texte en blocs de 64 bits Clé 56 bits (notée K) Proposé en 1975 Adopté en 1977 Doutes sur la taille de la clé (milieu 90 ) Chiffrement Feistel Groupement du texte en blocs de 64 bits Clé 56 bits (notée K) Proposé en 1975 Adopté en 1977 Doutes sur la taille de la clé (milieu 90 ) 1998 : message décrypté en 56 heures Chapitre 3 - Algorithmes de chiffrement par bloc p. 14/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 14/3 Principe du DES Principe du DES Chiffrement Feistel Groupement du texte en blocs de 64 bits Clé 56 bits (notée K) Proposé en 1975 Adopté en 1977 Doutes sur la taille de la clé (milieu 90 ) 1998 : message décrypté en 56 heures 1999 : le temps tombe à 22 heures Chiffrement Feistel Groupement du texte en blocs de 64 bits Clé 56 bits (notée K) Proposé en 1975 Adopté en 1977 Doutes sur la taille de la clé (milieu 90 ) 1998 : message décrypté en 56 heures 1999 : le temps tombe à 22 heures AES : clé de 128, 192 ou 256 bits Chapitre 3 - Algorithmes de chiffrement par bloc p. 14/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 14/3
m 0 INPUT m 64 Principe du DES Principe du DES p permutation L 0 R 0 K 1 f Clé intermédiaire K i L 15 R 15 f K 16 Transformation de K : on coupe K en deux fois 28 bits on shift de 1 ou 2 bits (un aux rounds 1, 2, 9 et 16) on recolle L 16 R 16 On choisit 48 bits particuliers : K i p 1 c 0 OUTPUT c 64 Chapitre 3 - Algorithmes de chiffrement par bloc p. 15/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 16/3 Principe du DES Principe du DES Chiffrement de Feistel : fonction f f(r i 1,K i )=P (S(E(R i 1 ) K i )) Chiffrement de Feistel : fonction f f(r i 1,K i )=P (S(E(R i 1 ) K i )) Fonction d expansion E mot de 32 bits mot de 48 bits Chapitre 3 - Algorithmes de chiffrement par bloc p. 17/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 17/3
Principe du DES Principe du DES Chiffrement de Feistel : fonction f f(r i 1,K i )=P (S(E(R i 1 ) K i )) Boite S (complexité du DES) 8 boites S : 6 bits 4bits mot b 1 b 2 b 3 b 4 b 5 b 6 : b 1 b 6 : instruction b 2 b 3 b 4 b 5 : donnée Chiffrement de Feistel : fonction f f(r i 1,K i )=P (S(E(R i 1 ) K i )) Boite S (complexité du DES) La boite S 5 : 2 12 4 1 7 10 11 6 8 5 3 15 13 0 14 9 14 11 2 12 4 7 13 1 5 0 15 10 3 9 8 6 4 2 1 11 10 13 7 8 15 9 12 5 6 3 0 14 11 8 12 7 1 14 2 13 6 15 0 9 10 4 5 3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 17/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 17/3 Principe du DES m 0 INPUT m 64 Décryptage Chiffrement de Feistel : fonction f p permutation f(r i 1,K i )=P (S(E(R i 1 ) K i )) L 0 R 0 K 1 f Permutation P couplage des sorties des S-boites L 15 R 15 f K 16 L 16 R 16 p 1 Chapitre 3 - Algorithmes de chiffrement par bloc p. 17/3 c 0 OUTPUT c 64 Chapitre 3 - Algorithmes de chiffrement par bloc p. 18/3
Propriétés, sécurité Propriétés, sécurité Propriétés de base : Chaque bit crypté dépend de tous les bits de la clé et du texte Propriétés de base : Chaque bit crypté dépend de tous les bits de la clé et du texte Pas de relation statistique entre le texte et son cryptage Chapitre 3 - Algorithmes de chiffrement par bloc p. 19/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 19/3 Propriétés, sécurité Propriétés, sécurité Propriétés de base : Chaque bit crypté dépend de tous les bits de la clé et du texte Pas de relation statistique entre le texte et son cryptage Propriété de complémentation Soit x le complément bit à bit de x. Si y = E K (x) alors ȳ = E K( x) Réduit l espace de recherche. Changer 1 bit du texte modifie tous les bits cryptés avec proba. 1/2 Chapitre 3 - Algorithmes de chiffrement par bloc p. 19/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 20/3
Propriétés, sécurité Propriétés, sécurité Propriété de complémentation Clés faibles, semi-faibles Une clé faible est telle que : Propriété de complémentation Clés faibles, semi-faibles DES a 4 clés faibles et 6 paires de clés semi-faibles E K (E K (x)) = x Une paire de clés semi-faibles est telle que : E K1 (E K2 (x)) = x Chapitre 3 - Algorithmes de chiffrement par bloc p. 20/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 20/3 Propriétés, sécurité Cryptage multiple Propriété de complémentation Clés faibles, semi-faibles DES n est pas un groupe Cryptage double Cryptage triple E(x) =E K1 (E K2 (x)) Important pour le cryptage multiple avec Ẽ = E ou E 1 E(x) =ẼK 1 (ẼK 2 (ẼK 3 x)) Le cas E-E 1 -E avec K 1 = K 3 est appelé cryptage triple à clé double. Chapitre 3 - Algorithmes de chiffrement par bloc p. 20/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 21/3
Cryptage multiple Cryptage multiple Attaque par le milieu (cryptage double) Cryptage triple : E E K i = E 1 E 1 K j Triple DES - 3DES résoud le problème de la taille de la clé lent E E 1 Chapitre 3 - Algorithmes de chiffrement par bloc p. 22/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 23/3 Historique Suite aux doutes sur DES : Janvier 1997 : projet AES annoncé AES - Advanced Encryption Standard AES Chapitre 3 - Algorithmes de chiffrement par bloc p. 24/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 25/3
Historique Historique Suite aux doutes sur DES : Janvier 1997 : projet AES annoncé AES - Advanced Encryption Standard Septembre 1997 : le public est invité à proposé des cryptosystèmes appropriés Suite aux doutes sur DES : Janvier 1997 : projet AES annoncé AES - Advanced Encryption Standard Septembre 1997 : le public est invité à proposé des cryptosystèmes appropriés 15 candidats sérieux dont des variantes d algorithmes populaires : RC5, SAFER-SK, CAST Chapitre 3 - Algorithmes de chiffrement par bloc p. 25/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 25/3 Suite aux doutes sur DES : Janvier 1997 : projet AES annoncé AES - Advanced Encryption Standard Historique Septembre 1997 : le public est invité à proposé des cryptosystèmes appropriés 15 candidats sérieux dont des variantes d algorithmes populaires : RC5, SAFER-SK, CAST 5 finalistes : MARS, RC6, Rijndael (Joan Daemen, Vincent Rijmen - Belgique), Serpent, Twofish Chapitre 3 - Algorithmes de chiffrement par bloc p. 25/3 Suite aux doutes sur DES : Janvier 1997 : projet AES annoncé AES - Advanced Encryption Standard Historique Septembre 1997 : le public est invité à proposé des cryptosystèmes appropriés 15 candidats sérieux dont des variantes d algorithmes populaires : RC5, SAFER-SK, CAST 5 finalistes : MARS, RC6, Rijndael (Joan Daemen, Vincent Rijmen - Belgique), Serpent, Twofish Octobre 2001 Chapitre 3 - Algorithmes de chiffrement par bloc p. 25/3
F 2 8 F 2 8 Eléments : polynômes de degré au plus 7 calcul modulo m(x) =X 8 + X 4 + X 3 + X +1 Eléments : polynômes de degré au plus 7 calcul modulo m(x) =X 8 + X 4 + X 3 + X +1 Représentation suitedebitsb 7 b 6 b 5 b 4 b 3 b 2 b 1 b 0 : b 7 X 7 + b 6 X 6 + b 5 X 5 + b 4 X 4 + b 3 X 3 + b 2 X 2 + b 1 X + b 0 Chapitre 3 - Algorithmes de chiffrement par bloc p. 26/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 26/3 F 2 8 Algorithme Eléments : polynômes de degré au plus 7 calcul modulo longueur de bloc variable (128, 192 ou 256 bits) longueur de clé variable (128, 192 ou 256 bits) m(x) =X 8 + X 4 + X 3 + X +1 Exemple La suite 01010111 ( 57 en hexadécimal) : X 6 + X 4 + X 2 + X +1 Chapitre 3 - Algorithmes de chiffrement par bloc p. 26/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 27/3
Algorithme Algorithme longueur de bloc variable (128, 192 ou 256 bits) longueur de clé variable (128, 192 ou 256 bits) Transformations portent sur un état tableau rectangulaire d octets de : 4 lignes Nb =(lg_bloc/32) colonnes longueur de bloc variable (128, 192 ou 256 bits) longueur de clé variable (128, 192 ou 256 bits) Transformations portent sur un état (N b ) a 0,0 a 0,1 a 0,2 a 0,3 a 0,4 a 0,6 a 1,0 a 1,1 a 1,2 a 1,3 a 1,4 a 1,6 a 2,0 a 2,1 a 2,2 a 2,3 a 2,4 a 2,6 a 3,0 a 3,1 a 3,2 a 3,3 a 3,4 a 3,6 -Exempled état pour Nb =6: 192 bits - Chapitre 3 - Algorithmes de chiffrement par bloc p. 27/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 27/3 Algorithme longueur de bloc variable (128, 192 ou 256 bits) longueur de clé variable (128, 192 ou 256 bits) Transformations portent sur un état (N b ) Même représentation pour la clé (N k ) Algorithme Ordre de remplissage des octets (à partir d un bloc) : m 0,0 m 0,1 m 1,0 m 2,0 m 3,0 m 1,1 m 2,1 m 3,1 k 0,0 k 0,1 k 0,2 k 0,3 k 1,0 k 1,1 k 1,2 k 1,3 k 2,0 k 2,1 k 2,2 k 2,3 k 3,0 k 3,1 k 3,2 k 3,3 -Exempledeclé pour Nk =4: 128 bits - Chapitre 3 - Algorithmes de chiffrement par bloc p. 27/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 28/3
Algorithme Algorithme Ordre de remplissage des octets (à partir d un bloc) : m 0,0 m 0,1 m 1,0 m 2,0 m 3,0 m 1,1 m 2,1 m 3,1 Nombre de rounds N r dépend de N b et N k : N r N b =4 N b =6 N b =8 N k =4 10 12 14 N k =6 12 12 14 N k =8 14 14 14 Structure d un round : Etat Byte Sub Shift Row Mix Column Add Round Key K i Chapitre 3 - Algorithmes de chiffrement par bloc p. 28/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 29/3 Algorithme Transformation "Byte Sub" Round final : Etat Byte Sub On considère chaque octet de l état comme un élément de F 2 8. On appelle S-box la suite de transformation : prendre l inverse multiplicatif dans F 2 8 Shift Row Add Round Key K i Chapitre 3 - Algorithmes de chiffrement par bloc p. 29/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 30/3
Transformation "Byte Sub" Transformation "Byte Sub" On considère chaque octet de l état comme un élément de F 2 8. On appelle S-box la suite de transformation : prendre l inverse multiplicatif dans F 2 8 appliquer la transformation affine suivante sur F 2 : a 0,0 a 1,0 a 2,0 a 3,0 a 0,1 a 1,1 a 2,1 a 3,1 a 0,2 a 1,2 a 1,3 a 1,4 a 1,5 S-box c 1,0 c 1,1 c 1,2 a 2,2 a 2,3 a 2,4 a 2,5 c 2,0 c 2,1 c 2,2 a 3,2 a 0,3 a 3,3 a 0,4 a 3,4 a 0,5 a 3,5 c 0,0 c 3,0 c 0,1 c 3,1 c 0,2 c 3,2 c 0,3 c 1,3 c 2,3 c 3,3 c 0,4 c 1,4 c 2,4 c 3,4 c 0,5 c 1,5 c 2,5 c 3,5 y 0 y 1 y 2 y 3 y 4 y 5 y 6 = 1 0 0 0 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 0 0 0 0 1 1 1 1 1 0 x 0 x 1 x 2 x 3 x 4 x 5 x 6 + 1 1 0 0 0 1 1 y 7 0 0 0 1 1 1 1 1 x 7 0 Chapitre 3 - Algorithmes de chiffrement par bloc p. 30/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 31/3 Transformation "Shift Row" Transformation "Shift Row" On applique à chaque ligne une permutation cyclique ligne 0 pas shiftée ligne 1 vers offset C 1 ligne 2 vers offset C 2 ligne 3 vers offset C 3 On applique à chaque ligne une permutation cyclique N b C 1 C 2 C 3 4 1 2 3 6 1 2 3 8 1 3 4 Chapitre 3 - Algorithmes de chiffrement par bloc p. 32/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 32/3
Transformation "Shift Row" Transformation "Mix Column" On applique à chaque ligne une permutation cyclique m n o p j k l d e f w x y z m n o p j d e w x y Offset 1 Offset 2 Offset 3 On considère les colonnes de l état comme des polynômes de F 2 8[X]. Transformation Mix Column avec a(x) a(x) c(x) [X 4 +1] c(x) = 03 X 3 + 02 X 2 + 01 X + 02 Chapitre 3 - Algorithmes de chiffrement par bloc p. 32/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 33/3 Transformation "Mix Column" Transformation "Mix Column" On considère les colonnes de l état comme des polynômes de F 2 8[X]. On considère les colonnes de l état comme des polynômes de F 2 8[X]. Transformation Mix Column Transformation Mix Column b 0 b 1 b 2 b 3 = 02 03 01 01 01 02 03 01 01 01 02 03 03 01 01 02 a 0 a 1 a 2 a 3 a 0,0 a 1,0 a 2,0 a 3,0 a 0,1 a 1,1 a 2,1 a 3,1 a 0,2 a 1,2 a 2,2 a 3,2 a 0,3 a 1,3 a 2,3 a 3,3 a 0,4 a 1,4 a 2,4 a 3,4 a 0,5 a 1,5 a 2,5 a 3,5 c(x) c 0,0 c 1,0 c 2,0 c 3,0 c 0,1 c 1,1 c 2,1 c 3,1 c 0,2 c 1,2 c 2,2 c 3,2 c 0,3 c 1,3 c 2,3 c 3,3 c 0,4 c 1,4 c 2,4 c 3,4 c 0,5 c 1,5 c 2,5 c 3,5 Chapitre 3 - Algorithmes de chiffrement par bloc p. 33/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 33/3
Transformation "Add Round Key" Résumé Etat Byte Sub La clé du round est ajoutée (XOR) à l état. la clé du round est de même taille que l état Shift Row Mix Column Add Round Key K i Clé de round obtenue par : Expansion de la clé Sélection d un certain nombre de bits Chapitre 3 - Algorithmes de chiffrement par bloc p. 34/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 35/3 Sécurité, remarques Sécurité, remarques Pas de symétries Pas de clés faibles ou semi-faibles Pas de symétries Pas de clés faibles ou semi-faibles Preuve de non sensibilité à la cryptanalyse différentielle Chapitre 3 - Algorithmes de chiffrement par bloc p. 36/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 36/3
Sécurité, remarques Sécurité, remarques Pas de symétries Pas de clés faibles ou semi-faibles Pas de symétries Pas de clés faibles ou semi-faibles Preuve de non sensibilité à la cryptanalyse différentielle Preuve de non sensibilité à la cryptanalyse linéaire Preuve de non sensibilité à la cryptanalyse différentielle Preuve de non sensibilité à la cryptanalyse linéaire Sensibilité à l attaque Square (mais coûteux) Chapitre 3 - Algorithmes de chiffrement par bloc p. 36/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 36/3 Sécurité, remarques Pas de symétries Pas de clés faibles ou semi-faibles Preuve de non sensibilité à la cryptanalyse différentielle Preuve de non sensibilité à la cryptanalyse linéaire Sensibilité à l attaque Square (mais coûteux) Autres cryptosystèmes Le décryptage est moins efficace que le cryptage (implémentation soft et hard). Chapitre 3 - Algorithmes de chiffrement par bloc p. 36/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 37/3
IDEA IDEA IDEA (International Data Encryption Algorithm) blocsde64bits clé de 128 bits 8 round et un round de sortie IDEA (International Data Encryption Algorithm) blocsde64bits clé de 128 bits 8 round et un round de sortie utilisé comme algorithme de cryptage symétrique dans les versions initiales de pgp XOR multiplication modulo 2 16 +1 addition modulo 2 16 Chapitre 3 - Algorithmes de chiffrement par bloc p. 38/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 38/3 IDEA IDEA (International Data Encryption Algorithm) blocsde64bits clé de 128 bits 8 round et un round de sortie jugé très sûr jusqu en 1999 problèmes dus aux progrès de la cryptanalyse algorithmes plus rapides Blowfish blocsde64bits cléde32à448bits 16 round Feistel très similaire à CAST-128 non propriétaire (utilisé dans ssh) Chapitre 3 - Algorithmes de chiffrement par bloc p. 38/3 Chapitre 3 - Algorithmes de chiffrement par bloc p. 39/3