Python을 사용한 암호화-Affine Cipher

Affine Cipher는 Multiplicative Cipher와 Caesar Cipher 알고리즘의 조합입니다. 아핀 암호의 기본 구현은 아래 이미지와 같습니다.

이 장에서는 암호화 및 복호화를위한 두 가지 기본 기능을 포함하는 해당 클래스를 생성하여 아핀 암호를 구현합니다.

암호

다음 코드를 사용하여 아핀 암호를 구현할 수 있습니다.

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')

산출

아핀 암호를 구현할 때 다음 출력을 관찰 할 수 있습니다.

출력은 일반 텍스트 메시지에 대해 암호화 된 메시지를 표시합니다. Affine Cipher 입력으로 보낸 메시지에 대한 해독 된 메시지 abcdefg.