Chiffre multiplicatif
Tout en utilisant la technique de chiffrement César, le chiffrement et le déchiffrement des symboles implique la conversion des valeurs en nombres avec une simple procédure de base d'addition ou de soustraction.
Si la multiplication est utilisée pour convertir en texte chiffré, on l'appelle un wrap-aroundsituation. Considérez les lettres et les nombres associés à utiliser comme indiqué ci-dessous -
Les nombres seront utilisés pour la procédure de multiplication et la clé associée est 7. La formule de base à utiliser dans un tel scénario pour générer un chiffre multiplicatif est la suivante -
(Alphabet Number * key)mod(total number of alphabets)
Le nombre récupéré via la sortie est mappé dans le tableau mentionné ci-dessus et la lettre correspondante est considérée comme la lettre cryptée.
La fonction de modulation de base d'un chiffrement multiplicatif en Python est la suivante -
def unshift(key, ch):
offset = ord(ch) - ASC_A
return chr(((key[0] * (offset + key[1])) % WIDTH) + ASC_A)
Note- L'avantage d'un chiffrement multiplicatif est qu'il peut fonctionner avec de très grosses clés comme 8 953 851. Il faudrait beaucoup de temps à un ordinateur pour forcer brutalement une majorité de neuf millions de clés.