Cryptographie avec Python - Chiffre Affine
Affine Cipher est la combinaison de l'algorithme Multiplicative Cipher et Caesar Cipher. La mise en œuvre de base du chiffrement affine est comme indiqué dans l'image ci-dessous -
Dans ce chapitre, nous implémenterons le chiffrement affine en créant sa classe correspondante qui comprend deux fonctions de base pour le chiffrement et le déchiffrement.
Code
Vous pouvez utiliser le code suivant pour implémenter un chiffrement affine -
class Affine(object):
DIE = 128
KEY = (7, 3, 55)
def __init__(self):
pass
def encryptChar(self, char):
K1, K2, kI = self.KEY
return chr((K1 * ord(char) + K2) % self.DIE)
def encrypt(self, string):
return "".join(map(self.encryptChar, string))
def decryptChar(self, char):
K1, K2, KI = self.KEY
return chr(KI * (ord(char) - K2) % self.DIE)
def decrypt(self, string):
return "".join(map(self.decryptChar, string))
affine = Affine()
print affine.encrypt('Affine Cipher')
print affine.decrypt('*18?FMT')
Production
Vous pouvez observer la sortie suivante lorsque vous implémentez un chiffrement affine -
La sortie affiche le message crypté pour le message en texte brut Affine Cipher et un message déchiffré pour le message envoyé en entrée abcdefg.