DES
Portail > Algorithmes
DES (Data Encryption Standard) est un chiffrement par bloc symétrique normalisé par le NIST en 1977 (FIPS 46). Bloc de 64 bits, clé de 56 bits effectifs : la clé est aujourd'hui bien trop courte pour résister à la force brute. DES est obsolète et ne doit plus être utilisé pour chiffrer quoi que ce soit.
Origine et normalisation
DES dérive de Lucifer, un algorithme conçu chez IBM par une équipe autour d'Horst Feistel dans les années 1970. Soumis au NAS/NIST pour devenir un standard fédéral américain, il a été retravaillé avec l'implication de la NSA — notamment le choix des S-box, longtemps suspecté d'affaiblir volontairement l'algorithme, avant qu'une cryptanalyse ultérieure (cryptanalyse différentielle, publiée par Biham et Shamir en 1990) ne montre au contraire que ces S-box avaient été durcies contre cette attaque, alors inconnue publiquement à l'époque.
Adopté comme FIPS 46 en 1977, DES a été le standard de chiffrement civil de référence pendant plus de vingt ans, avant d'être formellement retiré au profit d'AES (FIPS 197, 2001) puis déprécié définitivement par le NIST (à vérifier : date exacte du retrait de FIPS 46-3).
Fonctionnement
DES est un réseau de Feistel à 16 tours, opérant sur des blocs de 64 bits :
- Permutation initiale (IP) du bloc de 64 bits.
- Le bloc est coupé en deux moitiés de 32 bits (gauche/droite).
- À chaque tour : la moitié droite est étendue à 48 bits, XORée avec une sous-clé de tour (48 bits), passée dans huit S-box (substitution non linéaire, cœur de la sécurité de l'algorithme), puis permutée et XORée avec la moitié gauche ; les deux moitiés sont ensuite échangées.
- Permutation finale, inverse de l'IP.
La clé fournie fait 64 bits, mais 8 bits sont des bits de parité (un par octet) : la clé effective n'est donc que de 56 bits. Un key schedule (permutations PC-1 puis PC-2, avec rotations) dérive les 16 sous-clés de tour à partir de cette clé de 56 bits.
Faiblesses et cassage
Le seul vrai défaut structurel de DES est la taille de sa clé : 56 bits représentent 256 combinaisons, soit environ 7,2 × 1016 — un espace jugé raisonnable en 1977 mais totalement à la portée de la force brute moderne.
- En 1998, la machine Deep Crack de l'EFF (Electronic Frontier Foundation), construite spécifiquement pour l'occasion, a cassé une clé DES en moins de 3 jours.
- Le programme distribué DES Challenge (RSA Security) avait déjà démontré des cassages en quelques mois dès 1997, puis en quelques heures avec Deep Crack combiné à du calcul distribué (1999).
- Avec le matériel actuel (FPGA dédiés, GPU, cloud à la demande), une clé DES se casse par force brute en quelques heures, pour un coût désormais négligeable.
Aucune faiblesse cryptanalytique majeure n'a jamais permis de casser DES plus vite que la force brute exhaustive de sa clé — c'est bien la longueur de clé, et elle seule, qui condamne l'algorithme.
Triple DES (3DES) : une mitigation transitoire, elle-même dépréciée
Pour prolonger la durée de vie de DES sans concevoir un nouvel algorithme, l'industrie a généralisé Triple DES (3DES / TDEA) : appliquer DES trois fois avec deux ou trois clés distinctes (schéma chiffrer-déchiffrer-chiffrer, EDE), portant la sécurité effective à environ 112 bits.
Mais 3DES hérite du bloc de 64 bits de DES, ce qui l'expose à l'attaque par anniversaire Sweet32 sur de gros volumes chiffrés sous une même clé, et il reste très lent comparé à AES. Le NIST l'a officiellement déprécié et son usage est désormais interdit dans les nouveaux protocoles. Détails et calendrier de dépréciation : voir Algorithmes symétriques obsolètes.
Où on le rencontre encore
- Systèmes legacy n'ayant jamais migré (matériel bancaire ancien, automates industriels, protocoles propriétaires hérités).
- Le hachage de mot de passe Windows LM (LAN Manager) utilise DES en mode ECB comme brique de construction — un usage détourné, lui aussi obsolète.
- Certaines normes de génération de clés héritées (ex. ANSI X9.17) reposaient historiquement sur DES/3DES.
Dans tous ces cas, la présence de DES ou 3DES doit être traitée comme une dette technique à migrer, pas comme un choix acceptable.
Points clés à retenir
- DES (1977, NIST) : chiffrement de Feistel, bloc 64 bits, clé effective 56 bits.
- Cassé par force brute depuis la fin des années 1990 (Deep Crack, 1998) ; quelques heures aujourd'hui.
- Aucune faille cryptanalytique majeure : c'est uniquement la taille de clé qui le condamne.
- 3DES (triple application, ~112 bits) a prolongé sa durée de vie, mais son bloc de 64 bits reste vulnérable à Sweet32 : lui aussi désormais déprécié.
- À remplacer partout par AES (idéalement en mode AEAD).
Voir aussi
- Algorithmes symétriques obsolètes — 3DES, RC4, Blowfish et le problème du bloc de 64 bits
- AES (Rijndael) — le remplaçant standard
- Modes opératoires des chiffrements par bloc
- LM — hash Windows construit sur DES
| Cryptographie symétrique — Portail | |
|---|---|
| Fondamentaux | Principe · Bloc et flot · Modes opératoires · Padding · IV et nonces |
| Intégrité / auth. | MAC et HMAC · AEAD |
| Gestion des clés | Aléa / CSPRNG · KDF · Échange de clés · Stockage / rotation |
| Algorithmes | AES · ChaCha20/Salsa20 · DES / 3DES · Blowfish et Twofish · RC4 · Camellia, ARIA et SM4 · AES-GCM · ChaCha20-Poly1305 · Hachage |
| Applications | Données au repos · En transit / hybride |
| Sécurité avancée | Attaques · Conformité · Post-quantique |