Chiffre affine
Encodez et décodez le chiffre affine à l'aide de la formule E(x) = (a·x + b) mod 26. Faites varier le multiplicateur a et le décalage b, observez l'alphabet de substitution et la formule en direct se mettre à jour, puis copiez, téléchargez ou partagez le résultat. Tout s'exécute dans votre navigateur, en toute confidentialité.
Multiplicateur a
Décalage b
E(x) = (5x + 8) mod 26
Le multiplicateur a doit être premier avec 26, si bien que seules douze valeurs sont autorisées : 1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23 et 25. Le décalage b peut être n'importe quel nombre de 0 à 25.
Saisissez du texte ci-dessus pour voir le résultat ici.
Alphabet de substitution
Clair
Chiffré
Comment utiliser Chiffre affine
- 1
Choisissez chiffrer ou déchiffrer
Choisissez Chiffrer pour transformer du texte clair en texte chiffré affine, ou Déchiffrer pour retransformer le texte chiffré en texte lisible à l'aide des deux mêmes clés.
- 2
Réglez le multiplicateur a
Faites parcourir au multiplicateur a ses douze valeurs valides. Seuls les nombres premiers avec 26 sont proposés, de sorte que le chiffre peut toujours être inversé.
- 3
Réglez le décalage b
Faites varier le décalage b vers n'importe quelle valeur de 0 à 25. La formule en direct et le tableau de l'alphabet de substitution se mettent à jour dès que vous le modifiez.
- 4
Saisissez ou collez votre texte
Saisissez votre message et le chiffre s'exécute au fur et à mesure que vous tapez. Les lettres sont chiffrées tandis que les espaces, les chiffres et la ponctuation passent inchangés, et la casse est préservée.
- 5
Copiez, téléchargez ou partagez
Copiez le résultat, téléchargez-le sous forme de fichier texte, ou partagez un lien qui rouvre l'outil avec vos clés, votre texte et votre sens exacts, prêts à l'emploi.
Comprendre le chiffre affine
Qu'est-ce que le chiffre affine ?
Le chiffre affine est un chiffre par substitution monoalphabétique construit à partir d'une simple arithmétique modulaire. Chaque lettre est transformée en un nombre, avec A = 0 jusqu'à Z = 25, passée dans la fonction linéaire E(x) = (a·x + b) mod 26, puis reconvertie en lettre. Les deux nombres a et b forment la clé : a est le multiplicateur et b le décalage. Comme une même lettre se transforme toujours en la même lettre chiffrée, le chiffre affine appartient à la même famille que les chiffres de César et d'Atbash, mais son étape de multiplication suivie d'un décalage le rend plus général que l'un ou l'autre.
Le nom vient de la fonction affine a·x + b, la combinaison d'une multiplication et d'une addition qui donne au chiffre sa structure. C'est l'un des chiffres les plus appréciés pour enseigner les mathématiques sous-jacentes à la cryptographie, car il montre comment l'arithmétique modulaire, les nombres premiers entre eux et les inverses modulaires se rencontrent dans un code qui fonctionne. C'est aussi un habitué des énigmes, des salles d'évasion et des défis de capture du drapeau, où son petit espace de clés le rend satisfaisant à casser à la main.
La formule de chiffrement affine
Pour chiffrer, chaque lettre est convertie en sa position dans l'alphabet, avec A = 0, B = 1, et ainsi de suite jusqu'à Z = 25. Ce nombre x est introduit dans la formule E(x) = (a·x + b) mod 26 : on multiplie par a, on ajoute b, et on prend le reste de la division par 26 pour que le résultat revienne dans l'intervalle 0 à 25. La reconversion de ce nombre en lettre donne le texte chiffré. La multiplication par a étire et brouille l'alphabet, tandis que l'addition de b le fait glisser, et le mod 26 maintient tout à l'intérieur de l'anneau des 26 lettres.
L'outil ci-dessus montre l'ensemble de la correspondance d'un coup d'œil. Le tableau de l'alphabet de substitution liste chaque lettre claire de A à Z avec la lettre chiffrée qu'elle devient sous vos valeurs actuelles de a et b, et il se met à jour à l'instant où vous modifiez l'une ou l'autre clé. La casse des lettres est préservée, et tout ce qui n'est pas une lettre — espaces, chiffres, ponctuation, émojis — passe tel quel sans être touché, de sorte que la forme de votre message reste lisible même après son chiffrement.
Choisir les clés a et b
Le décalage b est facile : il peut être n'importe quel nombre entier de 0 à 25. Le multiplicateur a est le plus intéressant, car toutes les valeurs ne conviennent pas. Pour que le chiffre soit réversible, a doit être premier avec 26, c'est-à-dire qu'il ne partage aucun facteur commun avec 26 autre que 1. Puisque 26 = 2 × 13, tout nombre pair et tout multiple de 13 est exclu, ce qui laisse exactement douze valeurs utilisables : 1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23 et 25.
Si a partage un facteur avec 26 — disons a = 2 — alors plusieurs lettres claires différentes se télescopent sur une même lettre chiffrée, et le message ne peut plus être décodé de manière unique. C'est pourquoi le contrôle du multiplicateur ci-dessus ne parcourt que les douze valeurs valides : il est impossible de choisir une clé qui ne pourrait pas être annulée. Avec douze choix pour a et vingt-six pour b, il existe au total 312 combinaisons de clés possibles, dont l'une, a = 1 et b = 0, laisse le texte inchangé.
Un exemple concret de chiffre affine
Prenez les clés a = 5 et b = 8 et chiffrez le mot AFFINECIPHER. La première lettre A vaut 0, donc E(0) = (5·0 + 8) mod 26 = 8, ce qui donne I. La lettre suivante F vaut 5, donc E(5) = (5·5 + 8) mod 26 = 33 mod 26 = 7, ce qui donne H. En continuant lettre par lettre à travers tout le mot, on obtient le texte chiffré IHHWVCSWFRCP.
Vous pouvez suivre chaque étape sur le tableau de l'alphabet de substitution ci-dessus : réglez a sur 5 et b sur 8, et la ligne chiffrée montre A devenant I, B devenant N, C devenant S, et ainsi de suite à travers l'alphabet. Comme la correspondance est fixe, chiffrer la même lettre donne toujours le même résultat — les deux F de AFFINE deviennent tous deux H — ce qui est exactement la propriété qui permet à un attaquant d'utiliser l'analyse de fréquence contre lui.
Déchiffrer un chiffre affine
Le déchiffrement applique la formule à l'envers avec D(y) = a⁻¹·(y − b) mod 26. Le nouvel ingrédient est a⁻¹, l'inverse modulaire de a : le nombre qui, multiplié par a, donne 1 mod 26. Pour a = 5 l'inverse est 21, car 5 × 21 = 105 = 4 × 26 + 1. Pour décoder, vous soustrayez le décalage b, vous multipliez par cet inverse, et vous prenez le résultat mod 26. En reprenant l'exemple à l'envers, la lettre chiffrée I vaut 8, et D(8) = 21·(8 − 8) mod 26 = 0, ce qui redonne A.
Vous n'avez jamais à calculer l'inverse vous-même. Choisissez Déchiffrer ci-dessus, saisissez les mêmes a et b qui ont servi à chiffrer, et collez le texte chiffré — l'outil trouve l'inverse modulaire et récupère le message instantanément. Comme le chiffre affine est une correspondance biunivoque parfaite, le décodage rend votre texte d'origine exactement, avec ses espaces, ses majuscules et sa ponctuation tous intacts.
César et Atbash comme cas particuliers
Le chiffre affine contient discrètement deux des chiffres classiques les plus célèbres. Réglez le multiplicateur a sur 1 et la formule se réduit à E(x) = (x + b) mod 26, ce qui est précisément le chiffre de César — un simple décalage de chaque lettre de b places. Avec a = 1 et b = 3 vous obtenez le décalage classique que Jules César aurait utilisé, transformant A into D et HELLO en KHOOR.
Réglez a = 25 et b = 25 et quelque chose d'aussi familier apparaît. Comme 25 équivaut à −1 mod 26, la formule devient E(x) = (25 − x) mod 26, qui inverse l'alphabet de sorte que A becomes Z, B becomes Y, et ainsi de suite. C'est le chiffre Atbash, utilisé par les scribes hébreux il y a des milliers d'années. Voir les deux chiffres découler d'une seule formule est la façon la plus claire de comprendre comment le chiffre affine les généralise — essayez chaque réglage ci-dessus et regardez le tableau de substitution le confirmer.
Le chiffre affine est-il sûr ?
Selon tous les critères modernes, le chiffre affine n'offre aucune sécurité réelle. Avec seulement 312 clés possibles — et encore moins qui brouillent effectivement le texte — un ordinateur peut les essayer toutes en une fraction de seconde, et même une personne patiente peut le casser à la main par force brute. Il n'y a tout simplement pas assez d'information secrète dans deux petits nombres pour résister à une attaque.
Il est aussi vulnérable à l'analyse de fréquence, car il est monoalphabétique : chaque lettre se transforme toujours en la même lettre chiffrée, de sorte que la lettre chiffrée la plus fréquente représente très probablement le E, la lettre la plus fréquente en anglais. Un attaquant qui peut deviner ou apprendre seulement deux paires de lettres clair-chiffré peut même résoudre directement a et b avec un peu d'algèbre. Rien de tout cela n'est un défaut à corriger — c'est ce qui fait du chiffre affine un si bon outil pédagogique — mais pour protéger de vraies informations vous devriez toujours utiliser un algorithme moderne et revu par les pairs tel qu'AES.
Questions fréquentes
Qu'est-ce que le chiffre affine ?
Comment fonctionne le chiffre affine ?
Quelles valeurs le multiplicateur a peut-il prendre ?
Quelles sont les clés a et b dans le chiffre affine ?
Comment déchiffre-t-on un chiffre affine ?
Pouvez-vous montrer un exemple concret de chiffre affine ?
Quel est le rapport entre le chiffre affine et le chiffre de César ?
Quel est le rapport entre le chiffre affine et le chiffre Atbash ?
Combien de clés de chiffre affine sont possibles ?
Comment casse-t-on le chiffre affine ?
Le chiffre affine conserve-t-il les espaces, les nombres et la ponctuation ?
Mon texte est-il envoyé sur un serveur ?
Outils similaires
Continuez avec ces outils pratiques