2.1.2 近代密码学的开端
1949年,香农(Shannon,美国数学家、信息论之父、现代密码学先驱,见图2-3)的论文《保密系统的通信理论》(The Communication Theory of Secret Systems),阐明了关于密码系统的分析、评价和设计的科学思想,提出了保密系统的数学模型、随机密码、纯密码、完善保密性、理想保密系统、唯一解距离、理论保密性和实际保密性等重要概念,并提出评价保密系统的5条标准,即:保密度、密钥量、加密操作的复杂性、误差传播和消息扩展。这篇论文开创了用信息理论研究密码的新途径。
图2-3 香农(Shannon)
军事领域对于密码学的需求一直是非常旺盛的,战争中信息的保密传输和完整送达一直都被高度重视。在第二次世界大战中,正是波兰和英国密码学家破译了德军使用的恩尼格玛密码机(德语:Enigma,也被译作哑谜机、奇迷机,一种用于加密与解密文件的密码机),才使得战局出现了转机,其中的代表人物就是图灵。在第二次世界大战期间,数学家和工程师运用数学知识和科学技术破译了德国的恩尼格玛密码、“洛伦兹”密码以及日本海军的密码,获得了大量的“超级情报”,成为战争胜利的关键。
恩尼格玛密码系统如图2-4所示:水平面板的下面部分就是键盘,一共有26个键,空格和标点符号都被省略,在图2-4中只画了六个键。实物照片中,键盘上方就是显示器,它由标示了同样字母的26个小灯组成,当键盘上的某个键被按下时,和此字母被加密后的密文相对应的小灯就在显示器上亮起来。
图2-4 恩尼格玛密码系统
最先破解早期恩尼格玛密码机的是波兰人,1932年,波兰密码学家马里安·雷耶夫斯基、杰尔兹·罗佐基和亨里克·佐加尔斯基根据恩尼格玛机的原理破译了它。1939年中期,波兰政府将此破译方法告知英国和法国,但直到1941年英国海军捕获德国U-110潜艇,得到密码机和密码本后才完全破解了恩尼格玛密码。而英军在计算机理论之父图灵的带领下,通过德军在密钥选择上的失误以及借助战争中夺取的德军密码本,破解出重要的德军情报。1942年,美国教授约翰·阿塔那索夫和克利夫·贝瑞发明了世界上第一台采用真空管的计算机ABC(Atanasoff–Berry Computer)。借助于快速电子计算机和现代数学方法,美军成功破解出日军的PURPLE码,并在中途岛战役中截击山本五十六。可以说,密码学的发展直接改变了二战后期的格局,加快了战争的结束。在二战的日美太平洋战场上,美国海军使用纳瓦霍语进行情报传递。由于纳瓦霍语的语法、音调及词汇都极为独特且知之者甚少。因此,纳瓦霍语密码也成为近代史上少有的、从未被破译的密码。
恩尼格玛密码的成功破译,让密码学家们深刻地意识到:真正保证密码安全的往往不是加密解密算法,而是应该随时能够改变的密钥。随着计算机技术、电子通信技术的发展,密码的使用被迅速扩张到各个领域,也进一步促进了现代密码学体系的发展和完善。在密码学体系中,“对称加密”“非对称加密”“单向散列函数”“消息认证码”“数字签名”和“伪随机数生成器”被统称为密码学家的工具箱。其中,“对称加密”和“非对称加密”主要是用来保证机密性;“单向散列函数”用来保证消息的完整性;“消息认证码”的功能主要是认证;“数字签名”保证消息的不可抵赖性。