我们先来简略的看看密码学究竟是干什么的,它又是怎样的一种操作?
(以下部分摘自百度百科)
密码学是研究编制密码和破译密码的技术科学。研究密码变化的客观规律,应用于编制密码以保守通信秘密的,称为编码学;应用于破译密码以获取通信情报的,称为破译学,总称密码学。
密码学又产生了两大分支——古典密码和现代密码。
今天我们就来学习一下古典密码。
古典密码学,顾名思义就是古代所使用的密码。相对于现代密码学来说,优点是简单易学,适合新手理解适应密码学思维。但它的缺点一样致命,它的安全性能在今天就远远不及现代密码学。
古典密码学又分为置换和替换
置换,就是仅仅对明文的顺序按照一定的顺序(密钥)重新排列。
小例子:有一串明文I LOVE YOU,密钥是2134。(k=2134)
先将明文按照四个一组的规律排列。
ILOV EYOU
其次按照密钥的顺序(2134)重新排序,得出密文。
LIOVYEOU
解密就是反其道而行。
替换,就是对明文中的字符按照一定的规律(密钥)换成其它字符。
小例子:有一串明文I LOVE YOU,密钥是3。(k=3)
依照密钥=3,将明文字符在字母表中全部向后3个单位。A对应的就是D,B对应的是E
按照规律,得出密文。
LORYHBRX
解密上同。
------文末Bingo
取模运算(Mod)——在密码学中会用到的高等数论中的一个运算式
运算式
A Mod B=A-(A div B)*B (div指整除)
运算规则
(a + b) % p = (a % p + b % p) % p
(a - b) % p = (a % p - b % p) % p
(a * b) % p = (a % p * b % p) % p
ab % p = ((a % p)b) % p
菜鸟水平,大牛勿喷。欢迎各位同志交流学习。
喜欢文章的可以关注我的博客,每周更新干货!
作者联系方式Q1282487927