摘要: 上期我们说到了密码学的起源,知晓了恺撒密码的原理,以及目前三大主流的加密方式。 有不少小伙伴悄悄跟我说对这个很感兴趣~那么本期我来跟大家说说,密码学的演变过程吧~ 一、阴符 早在约三千年前,著名军事家姜子牙发明了——音符,不对,阴符。 没错,就是愿者上钩...
上期我们说到了密码学的起源,知晓了恺撒密码的原理,以及目前三大主流的加密方式。
有不少小伙伴悄悄跟我说对这个很感兴趣~
那么本期我来跟大家说说,密码学的演变过程吧~
一、阴符
早在约三千年前,著名军事家姜子牙发明了——音符,不对,阴符。
没错,就是愿者上钩的那位姜子牙。
根据姜太公的兵书著作《六韬》记载,所谓阴符,就是事先制作一些长度不同的竹片,然后约定好每个长度的竹片代表的内容,例如:
大胜克敌之符,长一尺;
破军擒将之符,长九寸;
友方将领拿到阴符,根据长短就能了解前方战事如何,而不知道意义的敌军即使拿到了也不明白。
但阴符传递的信息毕竟有限,毕竟你不能随身带一根40米的竹片。
二、阴书
于是为了弥补这个缺点,姜子牙提出了另一种方法——阴书。(姜子牙:没错,又是我)
阴书,就是把情报先明文写好,再分成三份,让三个信使拿着分头出发。
不过如果三份阴书全被截获,地方还是会得到情报。
或者只要有一份阴书被截获,自己既无法得到完整的情报,而且敌方有可能从这份阴书推测出完整的情报。
所以这个方法还是没有什么用。
三、字验
于是到了宋初,出现了一套全新的方法——字验。
根据记载,字验的方法是:
先约定用一首四十字的五言律诗作为密钥,并发给将领一本有40个短语编码顺序的密码本。
这40个短语是军事中常用的40个短语,比如:1.请弓;2.请箭;3.请刀……编码顺序可变化,不同的编码顺序可形成若干不同的密码本。
以《咏史》这首诗为例:
汉家青史上,计拙是和亲。
社稷依明主,安危托妇人。
岂能将玉貌,便拟静胡尘。
地下千年骨,谁为辅佐臣?
假如前线需要补充箭矢,将领就从密码本中查出“请箭”的编号是“2”,诗中对应的第2个字是“家”字,于是,将领就把“家”字写入一件无关机密的普通信件中,并给“家”字做个标记。
后方在收到信件后,查出“家”字在对应的诗中是第2个字,再对照密码本上的编码,2号是“请箭”的意思,然后就可以给前线送箭了。
由于信件内容无关机密,所以就算信使叛变或被俘,均不会泄露出有用的信息,保密的目的也就达到了。
但是字验也只能传递固定好的信息,并不能够完全覆盖所有的情报,还是有不小的局限性。
四、反切码
到了明朝,戚继光又发明了一种新方法——反切码,其原理与现代密电码的设计原理完全一样,但却比现代密码更难破译,它使用汉字注音方法中的“反切法”,进行编码。
“反切法”是一种注音方式,简单来说,就是取两个字(第一个字的声母,和第二个字的韵母)得出一个完整的读音,例如:
然后再根据当时的场景、情况来判断对应的汉字。
戚继光的反切码则是事先规定好两首诗,然后在第一首诗挑选一个字的声母,结合第二首诗某个字的韵母,再注一个声调,组合出一个新的注音。
届时只需发送三个数字,就能代表一个字,以此来保密通信。
是不是有点懵?下面我用李白的两首诗做一下示范——
《夜宿山寺》
危楼高百尺,手可摘星辰。
不敢高声语,恐惊天上人。
第一首的20个字代表声母,编号1-20。
《军行》
骝马新跨白玉鞍,战罢沙场月色寒。
城头铁鼓声犹震,匣里金刀血未干。
第二首的28个字代表韵母,编号1-28。
声调则用数字1-4表示。
这三样组合起来就是一个字的读音了。
以5-23-1和18-6-3为例子:
第一首诗的第五个字“尺”,声母是ch;
第二首诗的第二十三个字“里”,韵母是i;
声调是一声。
第一个字是“chī”
第一首诗的第十八个字“天”,声母是t;
第二首诗的第六个字“玉”,韵母是u;
声调是三声。
第二个字是“tǔ”
这样我们就能猜出,信息为“吃土”,
由此我们可以得出一个情报——
对方没钱了,只能吃土了……
这些奇奇怪怪的加密方法为古代的战事提供了强大的信息保障,为军事的发展立下汗马功劳。
然而随着加密学的发展,跟不上时代、满足不了保密需求的它们渐渐退出了历史的舞台。
到了科技飞速发展的今天,越来越多便捷且高级的加密方式应运而生,慢慢替代了过于繁琐或者安全系数不足的加密方式。