Serpent
Sign in to savealgorithme de chiffrement par bloc
Wikidata facts
- Instance of
- block cipher
- Designed by
- Lars Ramkilde Knudsen
- Official website
- www.cl.cam.ac.uk/~rja14/serpent.html
- Image
- Serpent-linearfunction.png
Show 2 more facts
- publication date
- 1997-00-00
- block size
- 64
via Wikidata · CC0
Article · Français
Serpent est un algorithme de chiffrement par bloc finaliste pour le concours AES. Il obtiendra finalement la 2e place (59 votes contre 86 votes pour Rijndael). Serpent a été conçu par (en), Eli Biham et Lars Knudsen. Tout comme les autres candidats pour AES, Serpent a une taille de bloc de 128 bits et supporte des clés de 128, 192 ou 256 bits, mais également d'autres longueurs inférieures (multiple de 8 bits). L'algorithme comporte 32 tours d'un réseau de substitution-permutation opérant sur quatre mots de 32 bits. Chaque tour utilise 32 copies de la même S-Box de 16x16 éléments, il y a 8 S-Boxes en tout qui sont utilisées chacune tous les 8 tours. Leur contenu provient d'une opération déterministe simple sur les S-Boxes de DES (les auteurs levaient ainsi une partie des soupçons sur des faiblesses volontairement insérées). Après avoir opéré la substitution, une transformation linéaire (voir diagramme) modifie le bloc pour le tour suivant. Celle-ci a fait l'objet d'une analyse poussée pour vérifier sa robustesse et améliorer l'effet avalanche. Serpent a été conçu pour travailler en parallèle avec 32 tranches de 1 bit. Cela maximise le parallélisme, mais fait également appel à la cryptanalyse intensive dont DES a été l'objet. Serpent a été jugé plus prudent que Rijndael, le vainqueur de AES, en matière de sécurité. Les concepteurs sont partis du principe que 16 tours suffisaient à repousser les attaques conventionnelles, mais pour contrer la cryptanalyse à venir, ils ont opté pour 32 tours. Serpent est souvent considéré comme l’un des systèmes de chiffrement les plus sûrs actuellement disponibles. Il existe aussi une version peu répandue de Serpent, capable de travailler avec des clés de 512 bits.
Abstract from DBpedia / Wikipedia · CC BY-SA