Chiffrement DES (obsolète)
Chiffrez du texte avec l’ancien DES (CBC, CFB, OFB, ECB) via une phrase secrète OpenSSL des-cbc ou une clé hex de 8 octets. Pour la compatibilité uniquement.
La sortie utilise le format OpenSSL « Salted__ » en Base64 : un sel aléatoire de 8 octets suivi du texte chiffré. La clé et l’IV sont dérivés de la phrase secrète et du sel : le même texte donne donc un résultat différent à chaque fois. Commande équivalente :
openssl enc -des-cbc -md md5 -a -A -provider legacy -provider default -k '…'S'exécute entièrement dans votre navigateur. Vos données ne sont jamais envoyées.
Qu'est-ce que Chiffrement DES ?
Chiffre des données avec le Data Encryption Standard, le chiffrement par blocs de 1977 à bloc de 64 bits et clé effective de 56 bits. Il est proposé ici pour reproduire d’anciens systèmes ou interagir avec eux (banque, cartes à puce, anciens fichiers), pas pour protéger quoi que ce soit.
Comment utiliser Chiffrement DES
- Laissez Source de la clé sur Phrase secrète (compatible OpenSSL) et saisissez une Phrase secrète, ou passez à Clé + IV bruts (hex) et entrez la clé et l’IV exacts en hex.
- Choisissez le Mode et le Remplissage (CBC avec PKCS#7 est la valeur par défaut d’OpenSSL).
- Saisissez ou collez le Texte en clair (ou passez l’encodage de l’entrée sur Hex pour des données binaires).
- Cliquez sur Chiffrer, choisissez Base64 ou Hex comme Encodage de la sortie et copiez le texte chiffré.
Exemple
Clé brute 133457799bbcdff1, mode ECB, remplissage Aucun, texte en clair hex 0123456789abcdef
85e813540f0ab405
Test classique à réponse connue de DES, encodage de sortie Hex.
Quand utiliser Chiffrement DES
Utilisez-le uniquement lorsqu’un protocole ou un format de fichier hérité exige DES, ou pour générer des vecteurs de test à réponse connue. Pour tout nouveau projet, utilisez AES. Triple DES est lui aussi obsolète.
Comment fonctionne Chiffrement DES
DES exécute 16 tours de Feistel sur des blocs de 8 octets. En mode phrase secrète, une clé et un IV de 8 octets sont dérivés de votre phrase secrète et d’un sel aléatoire (EVP_BytesToKey MD5 ou PBKDF2-SHA256), et le résultat est au format OpenSSL Salted__, compatible avec openssl enc -des-cbc -provider legacy. En mode brut, vous fournissez une clé de 8 octets (16 caractères hex ; les bits de parité sont ignorés) et un IV de 8 octets. CBC/ECB utilisent par défaut le remplissage PKCS#7 ; CFB et OFB sont des modes flux de 64 bits.
Cas d'utilisation courants
- Reproduire des vecteurs de test DES comme la clé 133457799BBCDFF1 / le texte en clair 0123456789ABCDEF
- Créer des données de test pour un ancien système de paiement ou de cartes à puce
- Enseigner le fonctionnement des chiffrements par blocs et des modes avec un exemple classique
- Chiffrer des données pour une ancienne application qui ne gère que DES
Note de Sécurité
DES utilise une clé de 56 bits qui peut être cassée par force brute en quelques heures sur du matériel ordinaire. N’utilisez cet outil que pour lire ou reproduire des données héritées ; ne chiffrez jamais de nouvelles données avec DES.
Questions Fréquentes
DES est-il sûr ?
Non. Sa clé de 56 bits a été cassée publiquement par force brute en 1998 (EFF DES Cracker) et cela prend aujourd’hui quelques heures. Utilisez AES pour des données réelles.
Pourquoi OpenSSL 3 indique-t-il que le chiffrement n’est pas pris en charge ?
OpenSSL 3 a déplacé DES vers le fournisseur « legacy ». Ajoutez -provider legacy -provider default à la commande, par exemple openssl enc -des-cbc -md md5 -a -A -provider legacy -provider default -k ….
Quelle longueur doit avoir la clé ?
Exactement 8 octets (16 caractères hex). Le bit de poids faible de chaque octet est un bit de parité ignoré par DES : deux clés qui ne diffèrent que par ces bits sont donc équivalentes.