返回介绍

Affine Ciphers

发布于 2021-06-12 09:21:31 字数 1071 浏览 1043 评论 0 收藏 0

仿射密码是乘法密码和凯撒密码算法的组合。 仿射密码的基本实现如下图所示 -

仿射密码的基本实现

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

Code

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

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

输出 (Output)

实现仿射密码时,您可以观察到以下输出 -

仿射

输出显示纯文本消息Affine Cipher的加密消息和作为输入abcdefg.发送的消息的解密消息abcdefg.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文