一:仿射密码加密
仿射密码是一种单表代换密码
代换密码就是明文每个字符按一定顺序代换成另一个字符
在仿射密码中26个小写英文字母分别对应(0,1,2,… ,25)
例子:将明文security按照以下方式加密
c代表密文,m代表明文
将每个字符的值作为m 带入公式7m+21 模26
二:欧几里得求逆元
仿射密码解密需要求出7在模26的逆元
列出方程26x+7y=1
将26写成7 * n+余数的形式
26=7 * 3+5
再从7开头,写成上一个式子余数 * m+余数的形式
7=5 * 1+2
一直写直到余数为1
5=2 * 2+1
再倒回去写
1=51+2(-2)
=51+(71+5(-1) )(-2)
=53+7(-2)
=(261+7(-3) )3+7(-2)
=263+7(-11)
求得x=3,y=-11
7在模26下的逆元为-11,因为要得到0到25之间的正整数,因此计算-11 (mod 26) = 26-11 = 15
三:仿射密码解密
仿射密码解密的式子是
乘的改成逆元 加的改成减