基础篇 3
第1章 整除 3
1.1 整除的概念 3
1.2 Euclid算法 5
1.3 扩展的Euclid算法 10
1.4 算术基本定理 14
思考题 16
第2章 同余 17
2.1 同余和剩余类 17
2.2 简化剩余系,欧拉定理与费马小定理 19
2.3 模运算和同余的应用 22
2.3.1 密码系统的基本概念模型 22
2.3.2 移位密码 23
2.3.3 Vigenere密码 23
2.3.4 Hill密码 24
思考题 24
第3章 同余式 25
3.1 一次同余式 25
3.1.1 一次同余式的求解 25
3.1.2 一次同余式在仿射加密中的应用 27
3.2 中国剩余定理 28
3.3 同余式的应用 31
3.3.1 RSA公钥密码系统 31
3.3.2 CRT在RSA中的应用 33
3.3.3 模重复平方算法 34
思考题 36
第4章 二次同余式和平方剩余 37
4.1 二次同余式和平方剩余 37
4.2 Legendre符号及其计算方法 41
4.3 Rabin公钥密码系统 45
思考题 48
第5章 原根与指数 49
5.1 原根和阶的概念 49
5.2 原根与阶的计算 53
5.3 Diffie-Hellman密钥协商 56
5.4 ElGamal公钥密码系统 59
思考题 61
第6章 群 62
6.1 群、子群、同态与同构 62
6.2 循环群 64
6.3 置换群 66
6.3.1 置换群的概念 66
6.3.2 置换群的应用 67
思考题 69
第7章 环与域 70
7.1 环 70
7.1.1 环和域的概念 70
7.1.2 多项式环 73
7.2 域 79
7.3 环和域在AES加密中的应用 82
7.3.1 AES的设计思想 82
7.3.2 AES中S盒的设计 83
7.4 环在NTRU密码体制中的应用 86
思考题 88
第8章 素性检测 89
8.1 素数的一些性质 89
8.2 Fermat测试 90
8.3 Solovay-Strassen测试 91
8.4 Miller-Rabin测试 94
思考题 95
高级篇 99
第9章 椭圆曲线群 99
9.1 椭圆曲线群的概念 99
9.2 椭圆曲线群的构造 100
9.3 椭圆曲线密码 103
9.3.1 椭圆曲线上的DH密钥协商协议 103
9.3.2 ElGamal加密的椭圆曲线版本 104
9.3.3 椭圆曲线快速标量点乘算法 104
思考题 105
第10章 大整数分解算法 106
10.1 Pollard Rho方法 106
10.2 Pollard p-1分解算法 107
10.3 随机平方法 108
思考题 110
第11章 离散对数算法 111
11.1 小步大步算法 111
11.2 Pollard Rho算法 112
11.3 指数演算法 114
11.4 Pohlig-Hellman算法 115
思考题 117
第12章 其他高级应用 118
12.1 平方剩余在GM加密中的应用 118
12.2 CRT在秘密共享中的应用 120
12.2.1 秘密共享的概念 120
12.2.2 基于CRT的简单门限方案 121
12.2.3 Asmuth-Bloom秘密共享方案 122
思考题 124
参考文献 125