Clé
Aussi appelé : Key · Clé secrète
La clé d’un chiffre est l’information privée qui permet de chiffrer un message — et de le déchiffrer. Sans elle, l’algorithme à lui seul ne sert à rien : il ne sait pas quoi produire ni quoi reconstituer. C’est elle qui fait toute la différence entre deux destinataires lisant le même chiffré : l’un voit du sens, l’autre voit du bruit.
Une nature qui change avec le chiffre
La forme d’une clé dépend du procédé :
- Nombre entier pour le César (le décalage : N = 3 chez Jules César). Espace de clés : 25 valeurs utiles (0 et 26 sont l’identité). Cassable à la main en cinq minutes.
- Mot ou phrase pour Vigenère, Playfair, Beaufort (« SECRET », « CITADELLE »). Espace : 26^L avec L la longueur de clé. Une clé de 8 lettres → 200 milliards de combinaisons.
- Permutation des 26 lettres pour la substitution monoalphabétique générale. Espace : 26! ≈ 4×10²⁶ combinaisons. Astronomique en théorie ; cassable en quelques minutes par analyse de fréquence.
- Matrice carrée n×n pour le chiffre de Hill. La clé doit être inversible modulo 26 — toutes les matrices ne fonctionnent pas.
- Suite aléatoire de bits aussi longue que le message pour le masque jetable. La seule clé qui produit un chiffre mathématiquement incassable, à condition d’être utilisée une seule fois et générée par un vrai aléa.
- Configuration des rotors + brouilleur + reflecteur + tableau de connexions pour Enigma : environ 10²² combinaisons. Inattaquable par brute-force pure. C’est pourtant l’usage opérateur (procédure prévisible, fautes humaines) qui a permis sa chute.
- Paire de clés publique/privée en cryptographie asymétrique (RSA, ECDSA). La publique est diffusée partout ; la privée ne quitte jamais son propriétaire. Mathématiquement liées par un problème difficile (factorisation pour RSA, logarithme discret pour ECDSA).
Le principe de Kerckhoffs
Le principe de Kerckhoffs (1883) stipule que la sécurité d’un chiffre doit reposer uniquement sur le secret de la clé, jamais sur le secret du procédé. Tout le monde peut connaître l’algorithme du Vigenère ; tant que la clé reste secrète, les messages restent protégés.
Conséquence pratique : un bon chiffre publie son fonctionnement et son code source. Un chiffre maison « secret » qui ne tient que parce que personne ne sait comment il marche tombe à la première fuite — réétudié de fond en comble par n’importe quel cryptanalyste compétent. C’est pour cette raison que les chiffres modernes (AES, RSA, ChaCha20) sont publics, normalisés (NIST FIPS 197 pour AES), et étudiés depuis des décennies. La confiance vient précisément de l’exposition publique : on a tenté, on a échoué, on tient bon.
Longueur de clé et espace de clés
L’espace de clés est l’ensemble des valeurs possibles. C’est lui qui dicte la difficulté d’une attaque par brute-force :
- 2⁵⁶ (DES) → cassé en 22 heures par EFF DES Cracker en 1998. Aujourd’hui, quelques minutes sur GPU.
- 2¹²⁸ (AES-128) → estimé incassable même par tous les ordinateurs de la Terre travaillant pendant l’âge de l’univers.
- 2²⁵⁶ (AES-256) → marge supplémentaire pour les contextes militaires et la résistance partielle à la cryptanalyse quantique.
Une clé trop courte invite le brute-force. Une clé trop longue ou mal gérée pose des problèmes pratiques (mémorisation, transmission, rotation). Le compromis dépend du contexte : 128 bits pour AES standard, 256 pour les usages militaires ou post-quantiques. Pour les chiffres historiques de CipherChronicle, on est dans des espaces beaucoup plus modestes (25 à 10²² selon le chiffre) — c’est ce qui les rend pédagogiquement attaquables avec un crayon.
Gestion des clés (key management)
Avoir une clé solide ne suffit pas — il faut savoir la gérer :
- Génération : la clé doit venir d’une source d’aléa de qualité. Une « clé » dérivée du nom du chien et de l’année de naissance du chiffreur est une clé cassable.
- Distribution : comment partager la clé sans la transmettre en clair ? C’est le grand problème historique, résolu par la cryptographie asymétrique (Diffie-Hellman, 1976).
- Stockage : ne jamais écrire une clé en clair dans un fichier de configuration versionné. Les Secret Managers (AWS Secrets Manager, GCP Secret Manager, HashiCorp Vault) existent pour ça.
- Rotation : changer périodiquement la clé limite l’impact d’une compromission silencieuse. Le standard est de tourner annuellement ou trimestriellement les clés sensibles.
- Révocation : pouvoir invalider une clé compromise. C’est ce que fait un certificate revocation list en TLS.
À retenir :
- La clé est ce qui transforme un algorithme public en chiffrement privé. L’algorithme se publie, la clé se garde.
- Espaces de clés : César 25, Vigenère 26^L, Substitution 26!, AES-128 2¹²⁸. La taille pratique compte plus que la taille théorique (analyse de fréquence vs brute-force).
- Kerckhoffs : la sécurité repose sur le secret de la clé, pas du procédé. Un chiffre « maison secret » est presque toujours pire qu’AES public.
- La gestion de clés (génération, distribution, stockage, rotation) est aussi importante que le choix de l’algorithme. Un bon chiffre avec une mauvaise gestion donne un mauvais système.