乘法密码
在使用凯撒密码技术时,加密和解密符号涉及通过简单的加法或减法基本过程将值转换为数字。
如果使用乘法来转换为密文,则称为环绕情况。考虑要使用的字母和相关数字,如下所示 -
这些数字将用于乘法过程,相关密钥为 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 万个密钥中的大多数,需要相当长的时间。