第1章 引言 1
1.1信息安全面临的威胁 1
1.1.1安全威胁 1
1.1.2入侵者和病毒 3
1.1.3安全业务 3
1.2信息安全的模型 4
1.3密码学基本概念 6
1.3.1保密通信系统 6
1.3.2密码体制分类 8
1.3.3密码攻击概述 8
第2章流密码 10
2.1流密码的基本概念 10
2.1.1同步流密码 10
2.1.2有限状态自动机 11
2.1.3密钥流产生器 13
2.2线性反馈移位寄存器 14
2.3线性移位寄存器的一元多项式表示 16
2.4 m序列的伪随机性 19
2.5 m序列密码的破译 22
2.6非线性序列 25
2.6.1 Geffe序列生成器 25
2.6.2 J-K触发器 26
2.6.3 Pless生成器 27
2.6.4钟控序列生成器 27
习题 29
第3章分组密码体制 31
3.1分组密码概述 31
3.1.1 代换 32
3.1.2扩散和混淆 34
3.1.3 Fejstel密码结构 35
3.2数据加密标准 38
3.2.1 DES描述 39
3.2.2二重DES 44
3.2.3 两个密钥的三重DES 46
3.2.4三个密钥的三重DES 46
3.3差分密码分析与线性密码分析 47
3.3.1差分密码分析 47
3.3.2线性密码分析 48
3.4分组密码的运行模式 49
3.4.1 电码本(ECB)模式 49
3.4.2 密码分组链接(CBC)模式 50
3.4.3密码反馈(CFB)模式 52
3.4.4输出反馈(OFB)模式 53
3.5 IDEA 54
3.5.1 设计原理 54
3.5.2加密过程 56
3.6 AES算法——Rijndae1 60
3.6.1 Rijndael的数学基础和设计思想 61
3.6.2算法说明 64
习题 73
第4章公钥密码 75
4.1数论简介 75
4.1.1素数和互素数 75
4.1.2模运算 76
4.1.3费尔玛定理和欧拉定理 78
4.1.4 素性检验 80
4.1.5欧几里得算法 81
4.1.6 中国剩余定理 83
4.1.7 离散对数 85
4.1.8平方剩余 87
4.2公钥密码体制的基本概念 91
4.2.1 公钥密码体制的原理 92
4.2.2公钥密码算法应满足的要求 94
4.2.3对公钥密码体制的攻击 95
4.3 RSA算法 95
4.3.1 算法描述 95
4.3.2 RSA算法中的计算问题 96
4.3.3 RSA的安全性 98
4.3.4对RSA的攻击 100
4.4背包密码体制 100
4.5 Rabin密码体制 103
4.6椭圆曲线密码体制 105
4.6.1 椭圆曲线 105
4.6.2有限域上的椭圆曲线 106
4.6.3椭圆曲线上的密码 108
习题 110
第5章密钥分配与密钥管理 112
5.1单钥加密体制的密钥分配 112
5.1.1 密钥分配的基本方法 112
5.1.2 一个实例 113
5.1.3 密钥的分层控制 114
5.1.4会话密钥的有效期 114
5.1.5 无中心的密钥控制 114
5.1.6 密钥的控制使用 115
5.2公钥加密体制的密钥管理 117
5.2.1公钥的分配 117
5.2.2用公钥加密分配单钥密码体制的密钥 120
5.2.3 Diffie-Hellman密钥交换 122
5.3 密钥托管 122
5.3.1 美国托管加密标准简介 123
5.3.2密钥托管密码体制的组成成分 127
5.4随机数的产生 128
5.4.1随机数的使用 128
5.4.2随机数源 129
5.4.3伪随机数产生器 130
5.4.4基于密码算法的随机数产生器 131
5.4.5 BBS产生器 133
5.5秘密分割 134
5.5.1秘密分割门限方案 134
5.5.2 Shamir门限方案 135
5.5.3 Asmuth-Bloom门限方案 137
习题 138
第6章消息认证和杂凑算法 139
6.1消息认证码 139
6.1.1 消息认证码的定义及使用方式 139
6.1.2产生MAC的函数应满足的要求 140
6.1.3数据认证算法 142
6.2杂凑函数 143
6.2.1 杂凑函数的定义及使用方式 143
6.2.2杂凑函数应满足的条件 145
6.2.3生日攻击 145
6.2.4迭代型杂凑函数的一般结构 147
6.3 MD5杂凑算法 148
6.3.1算法描述 148
6.3.2 MD5的压缩函数 151
6.3.3 MD5的安全性 153
6.4安全杂凑算法 154
6.4.1算法描述 154
6.4.2 SHA的压缩函数 156
6.4.3 SHA与MD5的比较 157
6.5 HMAC算法 158
6.5.1 HMAC的设计目标 158
6.5.2算法描述 159
6.5.3 HMAC的安全性 161
习题 161
第7章数字签字和密码协议 163
7.1数字签字的基本概念 163
7.1.1 数字签字应满足的要求 163
7.1.2数字签字的产生方式 164
7.1.3数字签字的执行方式 166
7.2数字签字标准 168
7.2.1 DSS的基本方式 168
7.2.2数字签字算法DSA 169
7.3其他签字方案 170
7.3.1 基于离散对数问题的数字签字体制 170
7.3.2基于大数分解问题的数字签字体制 174
7.4 认证协议 176
7.4.1 相互认证 176
7.4.2单向认证 180
7.5身份证明技术 182
7.5.1交互证明系统 182
7.5.2简化的Fiat-Shamir身份识别方案 182
7.5.3零知识证明 184
7.5.4 Fiat-Shamir身份识别方案 185
7.6其他密码协议 186
7.6.1 智力扑克 186
7.6.2掷硬币协议 187
7.6.3不经意传输 189
习题 192
第8章网络加密与认证 193
8.1网络通信加密 193
8.1.1 开放系统互连和TCP/IP分层模型 193
8.1.2网络加密方式 195
8.2 Kerberos认证系统 198
8.2.1KerberosV4 198
8.2.2 Kerberos区域与多区域的Kerberos 201
8.3 X.509认证业务 203
8.3.1证书 203
8.3.2认证过程 206
8.4 PGP 207
8.4.1运行方式 208
8.4.2密钥和密钥环 212
8.4.3公钥管理 217
参考文献 221