การเข้ารหัสด้วย Python - Affine Cipher
Affine Cipher คือการรวมกันของ Multiplicative Cipher และ Caesar Cipher algorithm การใช้งานพื้นฐานของรหัส affine ดังแสดงในภาพด้านล่าง -
ในบทนี้เราจะใช้การเข้ารหัส Affine โดยการสร้างคลาสที่สอดคล้องกันซึ่งมีฟังก์ชันพื้นฐานสองอย่างสำหรับการเข้ารหัสและการถอดรหัส
รหัส
คุณสามารถใช้รหัสต่อไปนี้เพื่อใช้รหัส 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')
เอาต์พุต
คุณสามารถสังเกตผลลัพธ์ต่อไปนี้เมื่อคุณใช้รหัสยืนยัน -
เอาต์พุตจะแสดงข้อความที่เข้ารหัสสำหรับข้อความธรรมดา Affine Cipher และถอดรหัสข้อความสำหรับข้อความที่ส่งเป็นอินพุต abcdefg.