更新时间:2023-07-15 02:48
现代密码学研究信息从发端到收端的安全传输和安全存储,是研究“知己知彼”的一门科学。其核心是密码编码学和密码分析学。前者致力于建立难以被敌方或对手攻破的安全密码体制,即“知己”;后者则力图破译敌方或对手已有的密码体制,即“知彼”。
人类有记载的通信密码始于公元前400年。古希腊人是置换密码的发明者。1881年世界上的第一个电话保密专利出现。电报、无线电的发明使密码学成为通信领域中不可回避的研究课题。
在第二次世界大战初期,德国军方启用“恩尼格玛”密码机,盟军对德军加密的信息有好几年一筹莫展,“恩尼格玛”密码机似乎是不可破的。但是经过盟军密码分析学家的不懈努力,“恩尼格玛”密码机被攻破,盟军掌握了德军的许多机密,而德国军方却对此一无所知。
太平洋战争中,美军破译了日本海军的密码机,读懂了日本舰队司令官山本五十六发给各指挥官的命令,在中途岛彻底击溃了日本海军,导致了太平洋战争的决定性转折,相反轴心国中,只有德国是在第二次世界大战的初期在密码破译方面取得过辉煌的战绩。因此,我们可以说,密码学在战争中起着非常重要的作用。
随着信息化和数字化社会的发展,人们对信息安全和保密的重要性认识不断提高。如网络银行、电子购物、电子邮件等正在悄悄地融入普通百姓的日常生活中,人们自然要关注其安全性如何。1977年,美国国家标准局公布实施了“美国数据加密标(DES)”,军事部门垄断密码的局面被打破,民间力量开始全面介入密码学的研究和应用中。民用的加密产品在市场上已有大量出售,采用的加密算法有DES、IDEA、RSA等。
现有的密码体制千千万万,各不相同。但是它们都可以分为单钥密码(对称密码体制)如 DES密码,和公钥密码(非对称加密体制)如RSA密码。前者的加密过程和脱密过程相同,而且所用的密钥也相同;后者,每个用户都有各自的公开钥和秘密钥。
编码密码学主要致力于信息加密、信息认证、数字签名和密钥管理方面的研究。信息加密的目的在于将可读信息转变为无法识别的内容,使得截获这些信息的人无法阅读,同时信息的接收人能够验证接收到的信息是否被敌方篡改或替换过;数字签名就是信息的接收人能够确定接收到的信息是否确实是由所希望的发信人发出的;密钥管理是信息加密中最难的部分,因为信息加密的安全性在于密钥。历史上,各国军事情报机构在猎取别国的密钥管理方法上要比破译加密算法成功得多。
密码分析学与编码学的方法不同,它不依赖数学逻辑的不变真理,必须凭经验,依赖客观世界觉察得到的事实。因而,密码分析更需要发挥人们的聪明才智,更具有挑战性。
现代密码学是一门迅速发展的应用科学。随着因特网的迅速普及,人们依靠它传送大量的信息,但是这些信息在网络上的传输都是公开的。因此,对于关系到个人利益的信息必须经过加密之后才可以在网上传送,这将离不开现代密码技术。
1976年Diffie和Hellman在《密码新方向》中提出了著名的D-H密钥交换协议,标志着公钥密码体制的出现。 Diffie和Hellman第一次提出了不基于秘密信道的密钥 分发,这就是D-H协议的重大意义所在。
PKI(Public Key Infrastructure)是一个用公钥概念与技术来实施和提供安全服务的具有普适性的安全基础设施。PKI公钥基础设施的主要任务是在开放环境中为开放性业务提供数字签名服务。
《现代密码学》系统地讲述了密码学的基础理论与应用技术。主要内容包括密码学的信息论基础、密码学的复杂性理论、流密码、分组密码、公钥密码、Hash函数、数字签名、密码协议和密钥管理。《现代密码学》内容丰富,取材经典、新颖,概念清楚,各章后面配有大量习题。《现代密码学》可作为高等院校信息安全、通信工程等相关专业本科生的教材,也可供研究生与相关技术人员学习参考。
何大可,西南交通大学教授、国家高性能计算中心(成都)主任、博士生导师、从1992年起享受国务院特殊津贴。兼任中国密码学会副理事长,华南农业大学“丁颖讲座教授”。长期从事密码学、移动通信安全、铁路信息系统安全工程等方面的教学、研究和设计工作。参与了我国首批密码学博士点申报;曾任第四届全国铁路高校电子信息类专业教学指导委员会副主任,计算机科学与技术、自动化专业教学指导组组长。先后主持、主研国家自然科学基金项目、国家“八五”攻关项目、国家863计划项目、教育部博士点基金项目及铁道部等部委科技项目约30项。是多项中国专利和美国专利US6、859、151 B2的发明人。1989年获国家自然科学四等奖,获省部级一等奖1次、省部级二等奖3次,1997年获中国科学技术发展基金会第三届詹天佑人才奖。
第1章 概论 1
1.1 信息安全与密码技术 1
1.2密码系统模型和密码体制 5
1.3 几种简单的密码体制 10
1.4 初等密码分析14
1.5 密码学的信息论基础 20
1.5.1 信息量和熵 20
1.5.2 完善保密性 23
1.5.3 唯一解距离、理论保密性与实际保密性 25
1.6 密码学的复杂性理论基础 30
1.6.1 问题与算法 30
1.6.2算法复杂性31
1.6.3 问题按复杂性分类 32
注记 33
习题 33
第2章 流密码 35
2.1 流密码的一般模型 35
2.2 线性反馈移位寄存器序列 37
2.3 线性复杂度及B-M算法 41
2.4 非线性准则及非线性序列生成器 44
2.5 流密码算法介绍 47
2.5.1RC4算法47
2.5.2 A5算法 48
注记 49
习题 50
第3章 分组密码 51
3.1 分组密码的一般模型 51
3.2 分组密码分析方法53
3.3 DES 54
3.3.1 DES算法描述 54
3.3.2 DES安全性60
3.3.3 三重DES 62
3.4 IDEA 63
3.4.1 IDEA基本运算 63
3.4.2 IDEA算法描述 64
3.4.3 IDEA安全性和效率 68
3.5 AES算法-Rijndael 68
3.5.1 Rijndael算法数学基础 69
3.5.2 Rijndael设计原理 72
3.5.3 Rijndael算法描述 73
3.5.4 Rijndael安全性及效率 79
3.6 分组密码工作模式 79
注记 83
习题 83
第4章公钥密码学85
4.1 公钥密码系统基本概念 85
4.1.1 基本概念 85
4.1.2 背包公钥密码系统 87
4.2RSA公钥密码系统 89
4.2.1 算法描述 89
4.2.2 对RSA的攻击 91
4.2.3 RSA系统的参数选取 93
4.3 离散对数公钥密码系统 93
4.3.1 ElGamal密码系统 93
4.3.2 ElGamal密码系统的安全性95
4.3.3 椭圆曲线密码系统 96
4.4 可证明安全公钥密码系统99
4.4.1 可证明安全性 99
4.4.2 公钥密码系统的安全性 100
4.4.3 可证明安全抗选择明文攻击密码系统 101
4.4.4 可证明安全抗选择密文攻击密码系统 102
注记 106
习题 107
第5章 Hash函数与消息认证 108
5.1 Hash函数概述 108
5.1.1 Hash函数定义 108
5.1.2 Hash函数的安全性109
5.1.3 Hash函数的迭代构造法 111
5.2 Hash函数MD5 112
5.2.1MD5算法112
5.2.2 MD5的安全性 116
5.3 安全Hash算法SHA-1 117
5.3.1 SHA-1算法 117
5.3.2 SHA-1和MD5的比较 120
5.3.3 SHA-1的修订版 121
5.4 基于分组密码与离散对数的Hash函数 122
5.4.1 利用分组密码构造Hash函数 122
5.4.2 基于离散对数问题构造Hash函数 123
5.5 消息认证 125
5.5.1消息认证码125
5.5.2 HMAC算法 126
5.6 应用 127
注记 129
习题 129
第6章 数字签名 131
6.1 数字签名概述 131
6.2 RSA数字签名体制 133
6.2.1 算法描述 133
6.2.2 RSA数字签名的安全性134
6.3 ElGamal数字签名体制 135
6.3.1 算法描述 135
6.3.2 ElGamal数字签名的安全性 137
6.3.3 ElGamal签名体制的变形 139
6.4 其他数字签名体制 140
6.4.1 Schnorr数字签名 140
6.4.2 Fiat-Shamir数字签名 141
6.4.3 一次性数字签名 143
6.4.4 不可否认数字签名 145
6.4.5 盲签名 147
6.5数字签名标准150
6.5.1 美国数字签名标准 150
6.5.2 俄罗斯数字签名标准 151
6.6 应用 152
注记 153
习题 153
第7章 密码协议 155
7.1 密码协议概述 155
7.2 实体认证协议 156
7.3密钥认证协议 162
7.3.1 基于对称密码技术的密钥认证协议 162
7.3.2 基于非对称密码技术的密钥认证协议 164
7.4 比特承诺协议 169
7.5 零知识证明与身份识别协议 171
7.5.1 零知识证明 171
7.5.2 身份识别协议 173
注记 176
习题 176
第8章密钥管理178
8.1 密钥管理的基本概念 178
8.2密钥生成与密钥分发 179
8.2.1 密钥的种类 179
8.2.2 密钥生成 180
8.2.3 密钥分配 182
8.3 秘密共享与密钥托管186
8.3.1 秘密共享 186
8.3.2 密钥托管 189
8.4公钥基础设施PKI 192
8.4.1 PKI的概念 192
8.4.2 PKI的组成 193
8.4.3 X.509认证业务 193
8.4.4 认证中心的体系结构与服务 196
8.4.5 PKI中的信任模型 197
注记 199
习题 199
参考文献 201
……