开发手册 欢迎您!
软件开发者资料库

使用Python进行密码学 - 仿射密码

使用Python仿射密码进行密码学 - 使用Python从简单而简单的步骤学习密码学,从基本到高级概念,包括概述,双强度加密,Python概述和安装,反向密码,凯撒密码,ROT13算法,转置密码,转置加密密码,转置密码的解密,文件加密,文件解密,Base64编码和解码,XOR处理,乘法密码,仿射密码,黑客单字母密码,简单替换密码,简单替换密码测试,简单替换密码解密,Python密码学模块,了解Vignere密码,实现Vignere密码,一次填充密码,一次填充密码的实现,对称和非对称密码,理解RSA算法,创建RSA密钥,RSA密码加密,RSA密码解密,黑客RSA密码。

Affine Cipher是Multiplicative Cipher和Caesar Cipher算法的组合.仿射密码的基本实现如下图所示 :

仿射密码的基本实现

在本章中,我们将通过创建包含两个加密和解密基本函数的相应类来实现仿射密码.

代码

您可以使用以下代码实现仿射密码 :

  class仿射(对象): DIE = 128  KEY =(7,3,55) def __init __(self):传递 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

输出显示纯文本消息仿射密码的加密消息和已作为输入 abcdefg发送的消息的解密消息.