Rechercher un outil sur dCode.fr


Chiffre Affine

La fonction de codage affine est une fonction de chiffrement faisant correspondre à une lettre e(x) = (ax + b)(mod 26) avec a et m premiers entre eux. La fonction de décodage est d(x) = a^-1 * (e(x) - b)(mod 26)

dCode est ton ami !

Plus aucun jeu, plus aucune énigme, plus aucune chasse au trésor ne vous résisteront.

Ecrire à l'auteur de dCode

Chiffre Affine

Déchiffrement par fonction affine


(optionnel)
(optionnel)
(optionnel)

A cause des propriétés mathématiques de cryptage et de décryptage, le coefficient A ne peut prendre que les valeurs 1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23 ou 25. De même, le coefficient B doit être compris entre 1 et 26, tout nombre négatif est ignoré.

Chiffrement par fonction affine


(optionnel)


Principe de Chiffrement

Chaque lettre est numérotée par son rang dans l'alphabet, selon les variantes on commence par A = 0 ou A = 1, on nomme x la valeur obtenue. A chaque valeur de x du message clair, on associe une valeur y résultat de la fonction affine y = A*x+B mod 26. La lettre chiffrée est donc la lettre au rang y dans l'alphabet.

ABCDEFGHIJKLMN OPQRSTUVWXYZ
012345678910111213141516171819202122232425

Soit un chiffrement affine de coefficients A = 3, B = 5. A chaque lettre du message clair DCODE (D = 3, C = 2, O = 14, D = 3, E = 4) on réalise le calcul Ax+B, soit 3*3+5=14=O, 3*2+5=11=L, 3*14+5(mod26)=47(26)=21=V, 3*3+5=14=O, 3*4+5=17=R. Le message codé est donc OLVOR.

Principe de Déchiffrement

A chaque valeur de y du message codé, on associe une valeur x, résultat de la fonction réciproque x = A'*(y-B) mod 26. La valeur A' est un entier tel que A*A' = 1 mod(26).

Soit un chiffrement affine de coefficients A = 3, B = 5. On recherche la valeur A' pour A = 3, une des valeurs possibles est A'=9, car A*A'=3*9=27=1 mod 26. A chaque lettre du message codé OLVOR (O = 14, L = 11, V = 21, O = 14, R = 17) on réalise le calcul A'*(x-B) mod 26, soit 9*(14-5)=81(mod26)=3=D, 9*(11-5)=54(mod26)=2=C, 9*(14-5)=144(mod26)=14=O, 9*(14-5)=81(mod26)=3=D, 9*(17-5)=108(mod26)=4=E. Le message clair est donc DCODE.

Quelles sont les valeurs de A' ?

1357911151719212325
1921153197231151725

Pourquoi y a-t-il une contrainte sur la valeur de A ?

Le théorème de Bezout indique que A' n'existe que si A et 26 sont premiers entre eux. Ceci limite les valeurs pour A à 1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23 et 25.

Pourquoi ne peut-on pas utiliser de valeur de A négative ?

C'est pourtant possible, mais une valeur de A = -1 est égale à une valeur de A = 25 (car 25 = -1 mod 26).

Cryptanalyse

Le chiffre affine est attaquable par force brute et analyse des fréquences car la substitution est monoalphabétique pour A parmi (1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23 et 25). Le coefficient A peut prendre 12 valeurs et le coefficient B peut prendre 26 valeurs soit seulement 312 clés à tester.

Commentaires


Menu

Outils similaires

Recommander



Mots-clés

Liens


© 2012 dcode.fr — Le site indispensable pour résoudre les énigmes, les jeux et les chasses au trésor. dCode