我的硕士论文做的是基于丢番图方程的密码设计,相当于拿着初等数论的问题去找应用,还不是真正的密码学的数学问题研究。但有了那本书之后我开始真正学习密码理论了。那本书的视角很独特,以前破解RSA算法的密文需要分解因子问题即要找到素数 p 或者 q,现在只要研究破解一个比特明文的多项式时间算法,就可获得一种破解全部明文的多项式时间算法。
王 :1993年博士毕业后我面临找工作的问题,于老师和潘老师进行了沟通,最后潘老师决定推荐我到中创软件工作。我硕士毕业时,潘老师也推荐我去中创。当时我还真去了一趟中创,对方让我学习 Linux 操作系统,还有 C 语言。在回来的路上,我在山大新校(现中心校区)南门西边的一个书店,买了两本 Linux 和 C 语言的书,开始学习编程。其实我对这些内容并不排斥,没准以后我还真能做好软件开发。后来我想自己博士毕业到企业发展是不是选错路了,当时我爱人也希望我留校工作,便跟潘老师说自己还是想当老师,潘老师说可以考虑我的想法,后来我就留校了。
国际著名 PGP 公司负责人菲利普·齐默曼(Philip R. Zimmermann)在会议现场当众对我说:“凭借这一成果,你可以在美国任何一所大学获得职位。”然后大家都很激动,Rump Session 主席斯图尔特·哈伯(Stuart Haber)高兴地到处跑来跑去,直到多年后他在北京见到我回想起那次大会还很激动。
当时整个现场非常震惊,大家建议我把结果放在网上,让其他密码学家去验证正确性。我和来学嘉老师工作到凌晨三点后把结果放到了网上,结果早上8点来老师来敲我的门,说他的邮箱爆了。邮件中大家都说我的其他算法攻击结果没有问题,但对 MD5 的攻击结果不对。吃饭时还有人说 MD5 的结果有问题,我说肯定没问题。到了会场后,比哈姆也说我的 MD5 结果不对,我建议两个人来一个现场测试。我们俩人各自迅速打开了电脑,MD5 一共有64步,我们从倒数第一步开始搜索,不得不说比哈姆这样顶级的密码分析学家真是厉害,他的速度非常之快,我的反应也很快, 结果从倒数第一步到第一步都不一样,我心想坏了。那时我脑子很灵光,马上判断出两个人有一个初始值不同。比哈姆说他的是标准程序,我说我用的是《密码学与安全:从理论到应用》(Cryptography and Security: From Theory to Applications)书上的,比哈姆电脑里恰好有这本书的电子版,马上把它放进去运行。结果不到一秒钟,听到比哈姆说“congratulation,you break MD5”。