目录
第1章 导言 1
1.1 安全目标 1
1.1.1 机密性 2
1.1.2 完整性 2
1.1.3 可用性 2
1.2 攻击 2
1.2.1 威胁机密性的攻击 3
1.2.2 威胁完整性的攻击 3
1.2.3 威胁可用性的攻击 4
1.2.4 被动攻击与主动攻击 4
1.3 服务和机制 5
1.3.1 安全服务 5
1.3.2 安全机制 6
1.3.3 服务和机制之间的关系 8
1.4 技术 8
1.4.1 密码术 8
1.4.2 密写术 9
1.5 本书的其余部分 10
第Ⅰ部分 对称密钥加密 10
第Ⅱ部分 非对称密钥加密 11
第Ⅲ部分 完整性、验证和密钥管理 11
第Ⅳ部分 网络安全 11
1.6 推荐阅读 11
1.7 关键术语 11
1.8 概要 12
1.9 习题集 12
第I部分 对称密钥加密
第2章 密码数学 第Ⅰ部分:模算法、同余和矩阵 17
2.1 整数算法 17
2.1.1 整数集 17
2.1.2 二进制运算 18
2.1.3 整数除法 18
2.1.4 整除性 20
2.1.5 线性丢番图方程 25
2.2 模运算 26
2.2.1 模算符 27
2.2.2 余集:Zn 27
2.2.3 同余 28
2.2.4 在集合Zn当中的运算 29
2.2.5 逆 32
2.2.6 加法表和乘法表 36
2.2.7 加法集和乘法集的不同 36
2.2.8 另外两个集合 37
2.3 矩阵 37
2.3.1 定义 37
2.3.2 运算和关系 38
2.3.3 行列式 39
2.3.4 逆 40
2.3.5 剩余阵 41
2.4 线性同余 41
2.4.1 单变量线性方程 41
2.4.2 线性方程组 42
2.5 推荐阅读 43
2.6 关键术语 44
2.7 概要 44
2.8 习题集 45
第3章 传统对称密钥密码 51
3.1 导言 51
3.1.1 Kerckhoff原理 53
3.1.2 密码分析 53
3.1.3 传统密码的分类 55
3.2 代换密码 55
3.2.1 单码代换密码 56
3.2.2 多码代换密码 63
3.3 换位密码 74
3.3.1 无密钥换位密码 74
3.3.2 有密钥的换位密码 75
3.3.3 把两种方法组合起来 76
3.4 流密码和分组密码 80
3.4.1 流密码 80
3.4.2 分组密码 81
3.4.3 组合 82
3.5 推荐阅读 82
3.6 关键术语 83
3.7 概要 83
3.8 习题集 84
第4章 密码数学
第Ⅱ部分:代数结构 89
4.1 代数结构 89
4.1.1 群 90
4.1.2 环 96
4.1.3 域 96
4.1.4 小结 98
4.2 GF(2n)域 98
4.2.1 多项式 99
4.2.2 运用一个生成器 106
4.2.3 小结 108
4.3 推荐阅读 108
4.4 关键术语 109
4.5 概要 109
4.6 习题集 110
第5章 现代对称密钥密码 113
5.1 现代分组密码 113
5.1.1 代换与换位 114
5.1.2 作为置换群的分组密码 115
5.1.3 现代分组密码的成分 117
5.1.4 换字盒 121
5.1.5 乘积密码 125
5.1.6 两类乘积密码 127
5.1.7 关于分组密码的攻击 130
5.2 现代流密码 135
5.2.1 同步流密码 135
5.2.2 异步流密码 140
5.3 推荐阅读 140
5.4 关键术语 141
5.5 概要 141
5.6 习题集 142
第6章 数据加密标准(DES) 145
6.1 导言 145
6.1.1 数据加密标准(DES)简史 145
6.1.2 概观 146
6.2 DES的结构 146
6.2.1 初始置换和最终置换 147
6.2.2 轮 148
6.2.3 密码和反向密码 153
6.2.4 示例 158
6.3 DES分析 160
6.3.1 性质 160
6.3.2 设计标准 161
6.3.3 DES的缺陷 162
6.4 多重 DES 166
6.4.1 双重DES 167
6.4.2 三重DES 168
6.5 DES的安全性 169
6.5.1 蛮力攻击 169
6.5.2 差分密码分析 169
6.5.3 线性密码分析 170
6.6 推荐阅读 170
6.7 关键术语 170
6.8 概要 171
6.9 习题集 171
第7章 高级加密标准(AES) 175
7.1 导言 175
7.1.1 高级加密标准(AES)简史 175
7.1.2 标准 176
7.1.3 轮 176
7.1.4 数据单位 177
7.1.5 每一个轮的结构 179
7.2 转换 180
7.2.1 代换 180
7.2.2 置换 185
7.2.3 混合 186
7.2.4 密钥加 189
7.3 密钥扩展 190
7.3.1 在AES-128中的密钥扩展 190
7.3.2 AES-192和AES-256中的密钥扩展 194
7.3.3 密钥扩展分析 194
7.4 密码 195
7.4.1 源设计 195
7.4.2 选择性设计 197
7.5 示例 198
7.6 AES的分析 200
7.6.1 安全性 201
7.6.2 可执行性 201
7.6.3 复杂性和费用 201
7.7 推荐阅读 201
7.8 关键术语 202
7.9 概要 202
7.10 习题集 203
第8章 应用现代对称密钥密码的加密 207
8.1 现代分组密码的应用 207
8.1.1 电子密码本模式 208
8.1.2 密码分组链接(CBC)模式 210
8.1.3 密码反馈(CFB)模式 212
8.1.4 输出反馈(OFB)模式 215
8.1.5 计数器(CTR)模式 217
8.2 流密码的应用 219
8.2.1 RC4 219
8.2.2 A5/1 222
8.3 其他问题 224
8.3.1 密钥管理 224
8.3.2 密钥生成 225
8.4 推荐阅读 225
8.5 关键术语 225
8.6 概要 226
8.7 习题集 227
第Ⅱ部分 非对称密钥加密
第9章 密码数学 第Ⅲ部分:素数及其相关的同余方程 231
9.1 素数 231
9.1.1 定义 231
9.1.2 素数的基数 232
9.1.3 素性检验 233
9.1.4 Euler Phi-(欧拉?(n))函数 234
9.1.5 Fermat(费尔马)小定理 236
9.1.6 Euler定理 237
9.1.7 生成素数 238
9.2 素性测试 239
9.2.1 确定性算法 240
9.2.2 概率算法 241
9.2.3 推荐的素性检验 245
9.3 因数分解 246
9.3.1 算术基本定理 246
9.3.2 因数分解方法 247
9.3.3 Fermat方法 248
9.3.4 Pollard p – 1方法 249
9.3.5 Pollard rho方法 250
9.3.6 更有效的方法 252
9.4 中国剩余定理 253
9.5 二次同余 254
9.5.1 二次同余模一个素数 255
9.5.2 二次同余模一个复合数 256
9.6 指数与对数 257
9.6.1 指数 257
9.6.2 对数 259
9.7 推荐阅读 264
9.8 关键术语 264
9.9 概要 265
9.10 习题集 266
第10章 非对称密钥密码学 271
10.1 导言 271
10.1.1 密钥 272
10.1.2 一般概念 272
10.1.3 双方的需要 274
10.1.4 单向暗门函数 274
10.1.5 背包密码系统 275
10.2 RSA密码系统 278
10.2.1 简介 278
10.2.2 过程 279
10.2.3 一些普通的例子 281
10.2.4 针对RSA的攻击 282
10.2.5 建议 287
10.2.6 最优非对称加密填充(OAEP) 288
10.2.7 应用 290
10.3 RABIN密码系统 291
10.3.1 过程 291
10.3.2 Rabin系统的安全性 293
10.4 ELGAMAL密码系统 293
10.4.1 ElGamal密码系统 294
10.4.2 过程 294
10.4.3 证明 295
10.4.4 分析 296
10.4.5 ElGamal的安全性 296
10.4.6 应用 298
10.5 椭圆曲线密码系统 298
10.5.1 基于实数的椭圆曲线 298
10.5.2 基于GF(p)的椭圆曲线 300
10.5.3 基于GF(2n)的椭圆曲线 302
10.5.4 模拟ElGamal的椭圆曲线加密系统 304
10.6 推荐阅读 306
10.7 关键术语 307
10.8 概要 307
10.9 习题集 309
第Ⅲ部分 完整性、验证和密钥管理
第11章 信息的完整性和信息验证 315
11.1 信息完整性 315
11.1.1 文档与指纹 315
11.1.2 信息与信息摘要 316
11.1.3 区别 316
11.1.4 检验完整性 316
11.1.5 加密hash函数标准 316
11.2 随机预言模型 319
11.2.1 鸽洞原理 320
11.2.2 生日问题 320
11.2.3 针对随机预言模型的攻击 322
11.2.4 针对结构的攻击 327
11.3 信息验证 327
11.3.1 修改检测码 327
11.3.2 信息验证代码(MAC) 328
11.4 推荐阅读 331
11.5 关键术语 332
11.6 概要 332
11.7 习题集 333
第12章 加密hash函数 337
12.1 导言 337
12.1.1 迭代hash函数 337
12.1.2 两组压缩函数 338
12.2 SHA-512 341
12.2.1 简介 341
12.2.2 压缩函数 345
12.2.3 分析 349
12.3 WHIRLPOOL 349
12.3.1 Whirlpool密码 350
12.3.2 小结 357
12.3.3 分析 357
12.4 推荐阅读 357
12.5 关键术语 358
12.6 概要 359
12.7 习题集 359
第13章 数字签名 363
13.1 对比 363
13.1.1 包含性 363
13.1.2 验证方法 364
13.1.3 关系 364
13.1.4 二重性 364
13.2 过程 364
13.2.1 密钥需求 364
13.2.2 摘要签名 365
13.3 服务 366
13.3.1 信息身份验证 366
13.3.2 信息完整性 366
13.3.3 不可否认性 367
13.3.4 机密性 368
13.4 针对数字签名的攻击 368
13.4.1 攻击类型 368
13.4.2 伪造类型 369
13.5 数字签名方案 369
13.5.1 RSA数字签名方案 369
13.5.2 ElGamal数字签名方案 373
13.5.3 Schnorr数字签名方案 375
13.5.4 数字签名标准(DSS) 378
13.5.5 椭圆曲线数字签名方案 380
13.6 变化与应用 382
13.6.1 变化 382
13.6.2 应用 383
13.7 推荐阅读 383
13.8 关键术语 384
13.9 概要 384
13.10 习题集 385
第14章 实体验证 387
14.1 导言 387
14.1.1 数据源验证与实体验证 387
14.1.2 验证的类型 388
14.1.3 实体验证和密钥管理 388
14.2 口令 388
14.2.1 固定口令 388
14.2.2 一次性密码 391
14.3 挑战—应答 392
14.3.1 对称密钥密码的运用 393
14.3.2 带密钥hash函数的应用 394
14.3.3 非对称密钥密码的应用 395
14.3.4 数字签名的应用 396
14.4 零知识 397
14.4.1 Fiat-Shamir协议 397
14.4.2 Feige-Fiat-Shamir协议 400
14.4.3 Guillou-Quisquater协议 400
14.5 生物测试 401
14.5.1 设备 401
14.5.2 注册 402
14.5.3 验证 402
14.5.4 技术 402
14.5.5 准确性 403
14.5.6 应用 404
14.6 推荐阅读 404
14.7 关键术语 404
14.8 概要 405
14.9 习题集 405
第15章 密钥管理 407
15.1 对称密钥分配 407
15.2 KERBEROS 413
15.2.1 服务器 413
15.2.2 操作 414
15.2.3 不同服务器的运用 414
15.2.4 Kerberos第五版 415
15.2.5 领域 416
15.3 对称密钥协定 416
15.3.1 Diffie-Hellman密钥协定 416
15.3.2 站对站密钥协定 420
15.4 公钥分配 421
15.4.1 公钥公布 422
15.4.2 可信中心 422
15.4.3 可信中心的控制 423
15.4.4 认证机关 423
15.4.5 X.509 424
15.4.6 公钥基础设施(PKI) 427
15.5 推荐阅读 429
15.6 关键术语 430
15.7 概要 430
15.8 习题集 431
第Ⅳ部分 网 络 安 全
第16章 应用层的安全性:PGP和S/MIME 435
16.1 电子邮件 435
16.1.1 电子邮件的构造 435
16.1.2 电子邮件的安全性 437
16.2 PGP 438
16.2.1 情景 438
16.2.2 密钥环 440
16.2.3 PGP证书 442
16.2.4 密钥撤回 449
16.2.5 从环中提取消息 449
16.2.6 PGP包 451
16.2.7 PGP信息 456
16.2.8 PGP的应用 457
16.3 S/MIME 458
16.3.1 MIME 458
16.3.2 S/MIME 463
16.3.3 S/MIME的应用 467
16.4 推荐阅读 467
16.5 关键术语 467
16.6 概要 467
16.7 习题集 468
第17章 传输层的安全性:SSL和TLS 471
17.1 SSL结构 472
17.1.1 服务 472
17.1.2 密钥交换算法 472
17.1.3 加密/解密算法 474
17.1.4 散列算法 475
17.1.5 密码套件 476
17.1.6 压缩算法 477
17.1.7 加密参数的生成 477
17.1.8 会话和连接 478
17.2 4个协议 480
17.2.1 握手协议 481
17.2.2 改变密码规格协议 487
17.2.3 告警协议 488
17.2.4 记录协议 488
17.3 SSL信息构成 491
17.3.1 改变密码规格协议 491
17.3.2 告警协议 491
17.3.3 握手协议 492
17.3.4 应用数据 498
17.4 传输层安全 499
17.4.1 版本 499
17.4.2 密码套件 500
17.4.3 加密秘密的生成 500
17.4.4 告警协议 502
17.4.5 握手协议 503
17.4.6 记录协议 504
17.5 推荐阅读 505
17.6 关键术语 505
17.7 概要 506
17.8 习题集 506
第18章 网络层的安全:IPSec 509
18.1 两种模式 510
18.2 两个安全协议 512
18.2.1 验证文件头(AH) 512
18.2.2 封装安全载荷(ESP) 513
18.2.3 IPv4和IPv6 514
18.2.4 AH和ESP 514
18.2.5 IPSec提供的服务 514
18.3 安全关联 516
18.3.1 安全关联的概念 516
18.3.2 安全关联数据库(SAD) 516
18.4 安全策略 518
18.5 互联网密钥交换(IKE) 521
18.5.1 改进的Diffie-Hellman密钥交换 522
18.5.2 IKE阶段 524
18.5.3 阶段和模式 524
18.5.4 阶段Ⅰ:主模式 525
18.5.5 阶段Ⅰ:野蛮模式 530
18.5.6 阶段Ⅱ:快速模式 532
18.5.7 SA算法 534
18.6 ISAKMP 535
18.6.1 一般文件头 535
18.6.2 有效载荷 536
18.7 推荐阅读 544
18.8 关键术语 544
18.9 概要 544
18.10 习题集 545
附录A ASCII 549
附录B 标准与标准化组织 551
附录C TCP/IP套件 557
附录D 初等概率 561
附录E 生日问题 565
附录F 信息论 569
附录G 不可约多项式与
本原多项式列举 575
附录H 小于10 000的素数 577
附录I 整数的素因数 581
附录J 小于1000素数的一次本原根列表 585
附录K 随机数生成器 587
附录L 复杂度 593
附录M ZIP 599
附录N DES差分密码分析和
DES线性密码分析 603
附录O 简化DES(S-DES) 611
附录P 简化AES(S-AES) 619
附录Q 一些证明 631
术语表 639
参考文献 657
· · · · · · (
收起)