信息安全中的多表代换密码是什么?


多表代换密码是基于替换的任何密码,使用多个替换字母表。在多表代换密码中,明文字母的加密方式根据其在文本中的位置而不同。与其是一对一的对应关系,不如说每个字母与其替代字符之间存在一对多的关系。

例如,“a”可以在文本开头加密为“d”,但在中间加密为“n”。多表代换密码具有隐藏基本语言字母频率的优点。因此,攻击者无法使用单个字母频率统计来破译密文。

第一个多表代换密码是阿尔伯蒂密码,由莱昂·巴蒂斯塔·阿尔伯蒂于 1467 年提出。它使用随机字母表来加密明文,但在不同的点上,它可以更改为不同的混合字母表,并在密文中用大写字母表示更改。

为了使用此密码,阿尔伯蒂使用了一个密码盘来显示明文字母如何与密文字母相关联。在此密码中,每个密文字符都基于相应的明文字符和明文字符在消息中的位置。

顾名思义,多表代换密码是通过使用多个密钥而不是仅一个密钥来实现的。这意味着密钥应该是子密钥流,其中每个子密钥都以某种方式取决于需要子密钥进行加密的明文字符的位置。

换句话说,需要一个密钥流 k = (K1, K2, K3 ...),其中 Ki 用于将明文中的第 i 个字符加密为密文中的第 i 个字符。此类算法中最著名和最简单的算法定义为维吉尼亚密码。

维吉尼亚密码是多表代换密码中最简单和最流行的算法之一。在这种方法中,字母文本使用基于关键字字母的多个凯撒密码序列进行加密。

凯撒密码将明文中的每个字母替换为字母表中向右恒定位置的字母。此移位以模 26 实现。例如,在移位 3 的凯撒密码中,A 可以变成 D,B 可以变成 E,依此类推。

维吉尼亚密码包括一系列简单的替换密码,具有多个移位值。在此密码中,关键字在与明文长度连接之前重复。

加密是通过转到与密钥相关的表格中的行,并找到对应于明文字符的列标题来实现的;维吉尼亚方格中对应行和列的交点处的字母创建密文字符。其余明文以类似方式加密。

更新于: 2022-03-15

14K+ 浏览量

启动您的 职业生涯

通过完成课程获得认证

开始
广告