基础篇 3
第1章 整除 3
1.1 整除的概念 3
1.2 Euclid算法 6
1.3 扩展的Euclid算法 10
1.4 算术基本定理 15
思考题 16
第2章 同余 18
2.1 同余和剩余类 18
2.2 简化剩余系、欧拉定理与费马小定理 20
2.3 模运算和同余的应用 24
2.3.1 密码系统的基本概念模型 24
2.3.2 移位密码 25
2.3.3 Vigenere密码 25
2.3.4 Hill密码 26
思考题 26
第3章 同余式 28
3.1 一次同余式 28
3.1.1 一次同余式的求解 28
3.1.2 一次同余式在仿射加密中的应用 31
3.2 中国剩余定理 32
3.3 同余式的应用 35
3.3.1 RSA公钥密码系统 35
3.3.2 CRT在RSA中的应用 37
3.3.3 模重复平方算法 38
思考题 40
第4章 二次同余式和平方剩余 42
4.1 二次同余式和平方剩余 42
4.2 Legendre符号及其计算方法 45
4.3 Rabin公钥密码系统 51
思考题 54
第5章 原根与指数 55
5.1 原根和阶的概念 55
5.2 原根与阶的计算 59
5.3 Diffie-Hellman密钥协商 63
5.4 ElGamal公钥密码系统 65
思考题 67
第6章 群 69
6.1 群的简介 69
6.2 子群、陪集、拉格朗日定理 72
6.3 正规子群、商群、同态 76
6.4 循环群 79
6.5 置换群 83
6.5.1 置换群的概念 83
6.5.2 置换群的应用* 86
思考题 88
第7章 环与域 89
7.1 环 89
7.1.1 环的概念 89
7.1.2 环同态、环同构 94
7.1.3 子环、理想 95
7.1.4 多项式环 99
7.2 域 106
7.2.1 素域、域的扩张* 106
7.2.2 域上多项式 110
7.2.3 有限域 112
7.3 环和域在AES加密中的应用 116
7.3.1 AES的设计思想 116
7.3.2 AES中S盒的设计 117
7.3.3 AES中列变换的设计 120
7.4 环在NTRU密码体制中的应用* 123
思考题 125
第8章 素性检测 126
8.1 素数的一些性质 126
8.2 Fermat测试 127
8.3 Solovay-Strassen测试 128
8.4 Miller-Rabin测试* 131
思考题 132
高级篇 135
第9章 椭圆曲线群 135
9.1 椭圆曲线群的概念 135
9.2 椭圆曲线群的构造 136
9.3 椭圆曲线密码 141
9.3.1 椭圆曲线上的DH密钥协商协议 141
9.3.2 ElGamal加密的椭圆曲线版本 141
9.3.3 椭圆曲线快速标量点乘算法 142
思考题 143
第10章 大整数分解算法 144
10.1 Pollard Rho方法 144
10.2 Pollard p—1分解算法 145
10.3 随机平方法 147
思考题 148
第11章 离散对数算法 149
11.1 小步大步算法 149
11.2 Pollard Rho算法 150
11.3 指数演算法 152
11.4 Pohlig-Hellman算法 153
思考题 155
第12章 其他高级应用* 156
12.1 平方剩余在GM加密中的应用 156
12.2 CRT在秘密共享中的应用 158
12.2.1 秘密共享的概念 158
12.2.2 基于CRT的简单门限方案 159
12.2.3 Asmuth-Bloom秘密共享方案 160
思考题 162
参考文献 163