第1章 密码学概述 1
1.1 信息安全与信号安全 1
1.2 信息安全等级 2
1.3 分析敌手的行为 3
1.4 加密通信的基本模型 4
1.5 口令与密钥 4
1.6 建立信任关系 5
1.7 公钥密码体制 6
1.8 哈希函数 8
1.9 量子计算机 10
第2章 现代密码算法的数学基础 13
2.1 模运算 13
2.2 有限域 14
2.3 辗转相除法 14
2.4 计算复杂度 15
2.5 素性测试 16
2.6 二次剩余 16
2.7 模约化算法 20
2.8 椭圆曲线 23
2.9 双线性映射 24
2.10 两个著名的数学难题 29
第3章 提取数字指纹 31
3.1 哈希函数MD5 31
3.2 哈希函数SHA1 34
第4章 实体和消息的认证 36
4.1 数字签名的概述 36
4.2 RSA签名算法 39
4.3 ElGamal签名算法 40
4.4 Schnorr签名算法 41
4.5 数字签名算法DSA 42
4.6 椭圆曲线数字签名算法ECDSA 43
第5章 协商或分发密钥 44
5.1 Diffie-Hellman密钥协商协议 44
5.2 RSA加密算法 45
5.3 ElGamal加密算法 46
5.4 Shamir秘密分享算法 47
第6章 对称分组加密算法与两个应用实例 48
6.1 数据加密标准DES 48
6.2 高级数据加密标准AES 52
6.3 PGP电子邮件系统 56
6.4 传输层安全协议TLS1.3 57
第7章 密钥协商与管理 61
7.1 Joux密钥协商协议 61
7.2 STS密钥协商协议 62
7.3 ECMQV密钥协商协议 63
7.4 Katz-Ostrovsky-Yung密钥协商协议 64
7.5 Obana-Araki防欺骗秘密分享算法 65
7.6 Bellare-Rivest半透明的密钥托管算法 66
7.7 Lewko-Sahai-Waters密钥撤销算法 67
第8章 公钥加密算法 68
8.1 McEliece加密算法 68
8.2 Rabin加密算法 69
8.3 Goldwasser-Micali概率加密算法 70
8.4 Canetti-Dwork-Naor-Ostrovsky可否认的加密算法 70
8.5 Boneh-Crescenzo-Ostrovsky-Persiano加密算法 71
8.6 Boneh-Boyen-Shacham同态加密算法 73
8.7 Boneh-Halevi-Hamburg-Ostrovsky循环安全加密算法 73
8.8 Applebaum-Barak-Wigderson加密算法 74
8.9 Lewko-Rouselakis-Waters抗侧信道攻击的加密算法 75
第9章 身份基加密算法 77
9.1 Boneh-Franklin身份基加密算法 77
9.2 Boneh-Boyen身份基加密算法 78
9.3 Boneh-Boyen分级身份基加密算法 79
9.4 Boneh-Boyen-Goh分级身份基加密算法 81
9.5 Boneh-Canetti-Halevi-Katz身份基加密算法 81
9.6 Boneh-Gentry-Hamburg身份基加密算法 82
9.7 Seo-Kobayashi-Ohkubo-Suzuki身份基加密算法 83
第10章 无证书密码算法 87
10.1 Riyami-Paterson无证书加密算法 87
10.2 Riyami-Paterson无证书签名算法 88
10.3 Choi-Park-Hwang-Lee无证书签名算法 89
10.4 Seo-Nabeel-Ding-Bertino无证书加密算法 89
10.5 一个无证书匿名加密算法 91
10.6 较少参数原则 94
第11章 属性基加密算法 100
11.1 Sahai-Waters属性基加密算法 100
11.2 Goyal-Pandey-Sahai-Waters属性基加密算法 101
11.3 Rouselakis-Waters属性基加密算法 102
11.4 属性基加密的设计目标 104
11.5 属性基加密的一些虚拟应用场景 106
第12章 同态加密 107
12.1 Naccache-Stern同态加密算法 108
12.2 Okamoto-Uchiyama同态加密算法 108
12.3 Paillier同态加密算法 109
12.4 Boneh-Goh-Nissim同态加密算法 112
12.5 Dijk-Gentry-Halevi-Vaikuntanathan全同态加密算法 114
12.6 Nuida-Kurosawa全同态加密算法 116
12.7 一个利用同态加密的线性方程组外包算法 118
12.8 两个利用同态加密的图像搜索算法 120
第13章 广播加密与代理重加密 123
13.1 Fiat-Naor广播加密 123
13.2 Boneh-Gentry-Waters广播加密 124
13.3 Barth-Boneh-Waters匿名广播加密 125
13.4 Libert-Paterson-Quaglia匿名广播加密 126
13.5 Blaze-Bleumer-Strauss代理重加密 127
13.6 Ateniese-Fu-Green-Hohenberger代理重加密 128
13.7 Libert-Vergnaud代理重加密 128
13.8 一个能抵抗选择密文攻击的代理重加密 130
第14章 数字签名 132
14.1 Rabin签名算法 132
14.2 Goldwasser-Micali-Yao签名算法 133
14.3 Gennaro-Halevi-Rabin签名算法 135
14.4 Cramer-Shoup签名算法 136
14.5 Boneh-Lynn-Shacham签名算法 137
14.6 Green-Hohenberger签名算法 138
14.7 Hohenberger-Waters签名算法 139
14.8 Zheng签密算法 140
14.9 数字签名模型的分类结果 141
第15章 代理签名与盲签名 152
15.1 Mambo-Usuda-Okamoto代理签名 153
15.2 Petersen-Horster代理签名 153
15.3 Lee-Kim-Kim代理签名 154
15.4 一个基于RSA的代理签名 155
15.5 Chaum盲签名 156
15.6 Schnorr盲签名 156
15.7 Zhang-Kim盲签名 157
15.8 Abe-Ohkubo公平盲签名 158
15.9 Camenisch-Piveteau-Stadler公平盲签名 158
15.10 Duc-Cheon-Kim前向安全盲签名 159
15.11 基于强RSA假设的盲签名和局部盲签名 160
15.12 Chaum-Fiat-Naor电子货币方案 162
第16章 群签名 165
16.1 群签名概述 165
16.2 Kim-Park-Won群签名 167
16.3 Tseng-Jan群签名A 169
16.4 Tseng-Jan群签名B 170
16.5 Kim-Lim-Lee群签名 172
16.6 Ateniese-Camenisch-Joye-Tsudik群签名 174
16.7 Xia-Yuo群签名 177
16.8 Boneh-Shacham群签名 180
16.9 Boneh-Boyen-Shacham群签名 181
第17章 承诺与零知识证明 182
17.1 Naor比特承诺 182
17.2 Naor承诺算法 183
17.3 Naor-Ostrovsky-Venkatesan-Yung比特承诺 184
17.4 Groth-Ostrovsky-Sahai同态承诺 185
17.5 Blum-Santis-Micali-Persiano关于素因子的零知识证明 186
17.6 Groth-Ostrovsky-Sahai关于明文非0即1的零知识证明 187
17.7 Groth-Ostrovsky-Sahai关于电路可满足性的零知识证明 189
第18章 不经意传输 190
18.1 可识别的消息 190
18.2 OT21协议 191
18.3 OTn1协议 193
18.4 OTnk协议 193
18.5 Naor-Pinkas分布式OTnk协议 195
18.6 Camenisch-Neven-Shelat自适应OT协议 196
18.7 Green-Hohenberger自适应OT协议 199
第19章 安全多方计算与洗牌算法 207
19.1 Yao百万富翁问题 207
19.2 Yao杂凑电路 208
19.3 Lin-Tzeng百万富翁问题解决方法 209
19.4 两个关于三角形面积的三方安全计算方法 213
19.5 Furukawa-Sako洗牌算法 214
19.6 Peng-Boyd-Dawson洗牌算法 216
19.7 Lindell-Waisbard洗牌算法 217
第20章 外包计算 220
20.1 线性规划问题的Dreier-Kerschbaum外包算法 220
20.2 线性规划问题的两个外包算法 222
20.3 线性回归问题的两个外包算法 223
20.4 求解线性方程组的两个外包算法 224
20.5 矩阵运算的外包算法 226
20.6 计算pairing的四个外包算法 230
20.7 密钥更新问题的一个外包算法 235
20.8 两个可检索的加密算法 238
20.9 一个模式匹配外包算法 242
20.10 一个加密数据共享算法 243
第21章 AKS算法——兼谈P与NP问题 246
21.1 AKS算法的描述 246
21.2 AKS算法的正确性 247
21.3 AKS算法的缺陷 250
21.4 P和NP问题 251
第22章 量子密码协议与算法 252
22.1 BB84量子密钥协商协议 252
22.2 Gottesman-Chuang量子数字签名 255
22.3 一个量子加密算法 255
22.4 Zeng-Keitel仲裁量子数字签名 256
22.5 Kent量子比特承诺协议 257
第23章 Bell不等式和Shor算法 260
23.1 Bell不等式 260
23.2 Deutsch-Jozsa量子算法 263
23.3 Shor量子求阶算法 266
23.4 Shor算法蕴含的宏观量子纠缠现象 269
23.5 Shor算法的并行量子模指数运算问题 273
23.6 并行量子模指数运算的理论困境 276
23.7 关于Shor算法的模拟实验 277
23.8 怎样鉴定一台量子计算机 279
第24章 比特币和区块链 280
24.1 电子货币 280
24.2 比特币 282
24.3 区块链 285
参考文献 288
索引 316