Chiffre affine
Le chiffre affine est une technique de cryptage utilisée en cryptographie pour transformer un texte clair en un texte chiffré en utilisant une fonction mathématique affine.
La formule générale pour le chiffre affine est C = (aP + b) mod m, où C est le texte chiffré, P est le texte clair, a et b sont des paramètres de la fonction affine, et m est la taille de l'alphabet utilisé.
Contraintes sur a et b
Pour que le chiffrement correctement c'est à dire que chaque lettre du message d'origine soit convertie en une lettre différente dans le message chiffré, a doit être premier avec m (le nombre de lettres de l'alphabet), c'est-à-dire que le plus grand commun diviseur de a et m doit être égal à 1.
De plus, b doit être un nombre entier positif plus petit que m, sinon la formule du chiffrement affine ne fonctionnera pas correctement.
Dans le calculateur ci-dessus, si vous saisissez une valeur b supérieure à m, on la remplace par une valeur qui lui est congru modulo m mais inférieure à m. Exemple: si vous saisissez b=28 alors on change cette valeur en b=2 (m = 26 pour l'alphabet usuel).
Exemple de chiffrement Affine
Appliquons le chiffre affine au message "Bonjour" avec les paramètres a=5, b=8 et m=26. Pour ce faire, nous commençons par attribuer un nombre à chaque lettre de l'alphabet, en utilisant l'ordre alphabétique (A=0, B=1, C=2, etc.). Ainsi, "B" serait 1, "O" serait 14, "N" serait 13, "J" serait 9, "O" serait 14 et "U" serait 20. En appliquant la formule du chiffre affine, nous obtenons le message chiffré "NAVBAEP" :
• Pour "B" : C = (5*1 + 8) mod 26 = 13, donc "N"
• Pour "O" : C = (5*14 + 8) mod 26 = 0, donc "A"
• Pour "N" : C = (5*13 + 8) mod 26 = 21, donc "V"
• Pour "J" : C = (5*9 + 8) mod 26 = 1, donc "B"
• Pour "O" : C = (5*14 + 8) mod 26 = 0, donc "A"
• Pour "U" : C = (5*20 + 8) mod 26 = 4, donc "E"
• Pour "R": C = (5*17 + 8) mod 26 = 15, donc "P"