📅  最后修改于: 2020-11-08 08:34:24             🧑  作者: Mango
在使用Caesar密码技术时,对符号进行加密和解密需要通过简单的加法或减法基本过程将值转换为数字。
如果将乘法用于转换为密文,则称为环绕情况。考虑要使用的字母和相关数字,如下所示:
该数字将用于乘法过程,并且关联的密钥为7。在这种情况下,用于生成乘法密码的基本公式如下-
(Alphabet Number * key)mod(total number of alphabets)
通过输出获取的数字映射到上面提到的表中,并将相应的字母作为加密字母。
Python乘法密码的基本调制函数如下-
def unshift(key, ch):
offset = ord(ch) - ASC_A
return chr(((key[0] * (offset + key[1])) % WIDTH) + ASC_A)
注-乘法密码的优点是它可以与非常大的密钥(例如8,953,851)一起使用。一台计算机要通过900万个键进行暴力破解需要很长时间。