20170516 19:00——20:18——20:27
备注:这里主要记录的是关于乘法密码的编制理论基础。参考教材是《信息安全工程师教程》,因为是新兴科目及教材,所以,其中甚不严谨,文字排版等也造成了阅读障碍更致于对此部分的费解。经过一段时间的细致了解、推测以及资料查阅,对本部分有了一定的程度的进一步了解。于是记录在这里,便于持续补充、修改,和知识积累。
参考链接:
信息安全技术知识:乘法密码、乘法密码举例
http://www.cnitpm.com/pm1/36080.html
密码学习笔记
http://www.360doc.com/content/16/0912/13/10961246_590246074.shtml
乘法密码——百度百科
http://baike.baidu.com/link?url=Hh4Gh3EappC5AYKZ9sAEHiNCcOuf9gX93oCBnEEhhMmUVd0lIAem39luOWQOR6FIIeBCyUsPD-Sg-q859P560H57ZVtMKgI3IfUljfkmJ__Nh4IPZYnjS6Zk9gtA74Lw
乘法密码
对于26个英文字母,将字母a-z从0-25进行编号,则乘法密码的映射函数为
f(ai) = bi = aj , 其中 j = ik mod n即 j = [(ik) mod n](要注意的是后面是联系着的完整的取余表达式!)
其中k和n互素,即gcd(k, n)=1,否则不存在模逆元,不能正确解密。
其中k的可取值个数称为乘法密码的密钥空间。乘法密码也称采样密码,因为密文字母表是将明文字母按照下标每隔k位取出一个字母排列而成。
(教材原文是“其中,要求k与n互素。因为仅当(k,n)=1时,才存在两个整数x,y使得xk+yn=1,才有xk=1 mod n,才有 i=xj mod n,密码才能正确解密。”,基于理解到的mod取余表达式,认为删除线标记的部分写法是错误的(但基于第二条参考链接,划线部分似乎是要说或表达为 [( xk + yn) mod n] =