Crittografia con Python - Affine Cipher
Affine Cipher è la combinazione dell'algoritmo Multiplicative Cipher e Caesar Cipher. L'implementazione di base del cifrario affine è come mostrato nell'immagine qui sotto:
In questo capitolo, implementeremo la crittografia affine creando la sua classe corrispondente che include due funzioni di base per la crittografia e la decrittografia.
Codice
È possibile utilizzare il codice seguente per implementare una cifratura 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')
Produzione
È possibile osservare il seguente output quando si implementa una crittografia affine:
L'output visualizza il messaggio crittografato per il messaggio di testo normale Affine Cipher e messaggio decrittografato per il messaggio inviato come input abcdefg.