第1章 初等数论基础 1
1.1 素数与因式分解 1
1.2 同余式理论 3
1.3 Euler定理 7
1.4 平方剩余 9
1.5 素性检验与模幂算法 12
1.6 指数与原根 13
1.7 习题 16
1.8 实验题 17
第2章 近世代数基础 18
2.1 群论初步 18
2.2 域论初步 20
2.3 有限域中的计算 26
2.4 习题 29
2.5 实验题 29
第3章 密码学基本概念 30
3.1 密码技术发展简介 30
3.2 密码系统的概念 32
3.3 密码分析 33
3.4 数字签名与认证 34
3.5 计算复杂性理论 36
3.6 传统密码举例 37
3.7 习题 39
第4章 对称密码算法 41
4.1 美国数据加密标准DES 41
4.1.1 历史 41
4.1.2 算法 41
4.1.3 DES实例 47
4.1.4 DES安全性 53
4.1.5 DES工作方式 56
4.2 国际数据加密算法IDEA 58
4.2.1 IDEA加密算法 59
4.2.2 IDEA子密钥生成 60
4.2.3 IDEA解密 61
4.2.4 IDEA讨论 63
4.2.5 IDEA实例 64
4.3 美国高级数据加密标准AES 66
4.3.1 算法 66
4.3.2 基本运算 67
4.3.3 基本部件 69
4.3.4 AES解密原理 72
4.3.5 密钥生成器 73
4.3.6 AES实例 75
4.4 欧洲密码标准 76
4.4.1 引言 76
4.4.2 Khazad 77
4.4.3 RC6 80
4.4.4 Safer++加密算法 81
4.5 习题 90
4.6 实验题 91
第5章 公钥密码算法 92
5.1 引言 92
5.1.1 公钥密码思想 92
5.1.2 Diffie-Hellman密钥交换协议 93
5.2 RSA密码体制 93
5.2.1 体制描述 94
5.2.2 算法分析 94
5.2.3 安全性分析 95
5.2.4 RSA举例 99
5.3 Rabin公钥密码体制 102
5.3.1 体制描述 102
5.3.2 解密算法及原理 102
5.3.3 安全性与因子分解 103
5.3.4 错误明文攻击 103
5.3.5 示例 104
5.4 ElGamal公钥密码体制 104
5.4.1 体制描述 104
5.4.2 示例 105
5.5 MH背包公钥密码体制 105
5.5.1 0-1背包问题 105
5.5.2 超递增序列 106
5.5.3 背包密码体制的原理 106
5.5.4 MH背包密码体制的描述 107
5.5.5 示例 108
5.6 概率公钥密码体制 109
5.6.1 引言 109
5.6.2 体制的描述 109
5.6.3 示例 110
5.7 NTRU公钥密码体制 112
5.7.1 NTRU的工作空间 112
5.7.2 密码体制 113
5.7.3 解密原理与参数选择 113
5.7.4 安全性分析 114
5.7.5 示例 116
5.8 公钥密码标准 116
5.8.1 PKCS#1 117
5.8.2 PKCS#3 v2.1 121
5.9 习题 122
5.10 实验题 124
第6章 数字签名方案与散列函数 126
6.1 数字签名方案 126
6.1.1 引言 126
6.1.2 RSA签名方案 127
6.1.3 ElGamal签名方案 128
6.1.4 数字签名标准DSS 131
6.1.5 其他数字签名方案 132
6.2 散列函数 135
6.2.1 签名与散列函数 135
6.2.2 无碰撞散列函数 136
6.2.3 离散对数散列函数 137
6.2.4 散列函数的扩展 139
6.3 散列函数标准SHS 140
6.3.1 MD5 140
6.3.2 SHA-1 144
6.3.3 SHA-256,SHA-384,SHA-512 148
6.3.4 MD5,SHA-1,SHA-256,SHA-384,SHA-512的比较 151
6.4 习题 152
6.5 实验题 153
第7章 序列密码 154
7.1 序列密码模型 154
7.2 序列的随机性概念 155
7.3 线性反馈移位寄存器 157
7.4 m序列及其随机性 159
7.5 周期序列的线性复杂度 162
7.6 习题 163
第8章 椭圆曲线密码学 165
8.1 引言 165
8.2 椭圆曲线的概念 166
8.2.1 概念和定义 166
8.2.2 群运算 167
8.2.3 椭圆曲线的分类 169
8.2.4 椭圆曲线分类加法公式 171
8.3 椭圆曲线群的结构 172
8.3.1 群的阶 172
8.3.2 椭圆曲线的同构类 173
8.4 有限域F2m上的算术运算 175
8.4.1 F2m的基及其元素的的运算 175
8.4.2 有限域F2n上椭圆曲线的倍点公式 177
8.5 椭圆曲线上的密码体制 180
8.5.1 Menezes-Vanstone密码体制 182
8.5.2 F2m上非超奇椭圆曲线Menezes-Vanstone密码算法 182
8.5.3 超奇椭圆曲线的密码体制 184
8.5.4 EDSA——椭圆曲线数字签名标准ANSI X9.62 184
8.5.5 其他体制的椭圆曲线版本 185
8.6 习题 187
第9章 混沌理论在密码学中的应用 189
9.1 混沌的基本概念 189
9.2 混沌序列的产生及其随机序列 190
9.3 逆混沌密码体制 193
9.4 示例 193
9.5 实验题 194
第10章 量子密码理论 195
10.1 引言 195
10.2 Heisenberg测不准原理 195
10.3 BB84协议 196
10.3.1 无窃听量子信道的密钥分配过程 197
10.3.2 有窃听量子信道的密钥分配过程 198
10.4 习题 199
第11章 密码协议 200
11.1 引言 200
11.2 公证协议 200
11.2.1 仲裁协议 200
11.2.2 裁决协议 201
11.2.3 自动执行协议 201
11.3 密钥协议 201
11.3.1 密钥交换协议 202
11.3.2 密钥协商协议 203
11.4 秘密共享 203
11.4.1 Shamir门限方案 204
11.4.2 Blakley秘密共享方案 206
11.4.3 带有不同权限的秘密共享方案 206
11.4.4 秘密共享中的欺骗 207
11.5 网络游戏 207
11.5.1 扑克游戏 207
11.5.2 电子掷币协议 209
11.6 电子投票协议 210
11.7 习题 211
11.8 实验题 211
参考文献 212