现场除了防工委的领导,还有负责重写加解密程序的程序员。
高振东直接把3DES给搬了出来,不过他做了一点改动,并没有限制3次,而是变化的。
“就用GM-1的算法,但是进行多次加解密就可以。”
“就这么简单?”程序员总觉得这好像太糊弄事儿了。
高振东点点头:“就这么简单,不过具体的顺序有点特殊。”
“首先,每次加解密的密钥要不相同,每加密一次,要换一个密钥,比如加密三次,那就是一共21个字节长度的密钥,每一次用7个字节。”
现场的数学方面的人员想了一会儿,点头肯定:“嗯,高主任这个办法不错,实际上是利用现有算法,直接增加了密钥的长度。”
程序人员有点没拐过弯来:“这样也就是把暴力破解时间延长到原来的3倍而已,没有质的变化啊。”
数学人员笑道:“不不不,按照这个算法,时间的增加是指数级别的,不是线性按倍数增加。”
程序员还是一时间没想明白,不过专业数学家都这么说了,想来没有问题。
见他们明白了自己的想法,高振东又提出了第二个要求:“不论加密几次,奇数次使用GM-1的加密算法进行加密,偶数次使用GM-1的解密算法进行加密,而且总的加密次数,应该是个奇数。”
“简单说就是,第一次用GM-1的加密算法进行加密,第二次就要用GM-1的解密算法进行加密,第三次还是用加密算法进行加密,以此类推。”
以3次加密来说,整个过程是用Key1加密——用Key2解密(实际上也是加密)——用Key3加密。
这句话有点拗口,但是大家还是能听懂要求,因为GM-1的解密算法,实际上也是一种加密操作,只是它是加密算法的逆运算而已。
也就是说实际上还是进行了三次加密,但是高振东这个要求的目的是什么,一时间却是想不出来。
高振东笑道:“这个算法,我们可以叫它多道GM-1算法,至于用这种规定,是为了保持和单道GM-1算法的兼容性。”
在场的人都陷入了思考,有点儿绕。
这次先反应过来的,是程序员,毕竟兼容性是他们的专业范畴。
“啊,我明白了,这样一来,当每次使用的密钥都是相同的时候,多道GM-1的加密结果就与单道GM-1是一致的!!”
这下大家都听懂了,都称赞高振东这个规定太巧妙了。
整个多道GM-1的算法都很巧妙,利用多道加密,可以随心所欲的通过加密次数极大提升加密强度,同时又巧妙的在偶数次加密中利用解密算法进行加密,解决了单道加密与多道加密之间的兼容性问题。
听懂了高振东的意思,防工委领导当即拍板:“干!”
对于这个结果,离开防工委的高振东心情极为高兴,无需不远千里坐飞机送一些机密文件了,那有些意外也许就不会发生了。
虽然自己搞出了DJS-59并普及开来,肯定极大改变了大漠工程的进度和过程,有的遗憾应该不会再发生,但是能多加一层保险,总是好事。
(本章完)