仿射密码
仿射密码是是加法密码与乘法密码的结合。它一种表单代换密码,字母表的每个字母相应的值使用一个简单的数学函数对应一个数值,再把对应数值转换成字母。加密后字母的大小写不变的。
- 加密函数:E(x) = (ax + b) (mod m),其中a与m互为质数,这也是能求a逆模的必要条件。
- 解密函数:D(x) = a^-1(x - b)(mod m),其中 a^-1为a在Zm群的逆元。
当 a = 1时相当于凯撒密码, 其实整个密码就是凯撒密码那种意思,只是加强版吧。
对于求逆元可以直接使用python gmpy2库的 invert() 方法。