第1章 密码学的用途 1
1.1.1 操作系统工作原理 2
1.1 计算机操作系统提供的安全 2
1.1.2 默认的操作系统安全:权限 3
译者序 3
1.1.3 攻击口令字 4
鸣谢 5
1.2 绕过操作系统的攻击 6
1.2.1 数据恢复攻击 6
前言 7
1.2.2 内存重构攻击 7
致谢 9
1.3 用密码学来加强保护 10
序言 11
1.4 密码学在数据安全中的作用 11
作者简介 13
第2章 对称密钥密码学 13
2.1 一些密码学术语 16
2.2 密钥 18
2.3 密钥的必要性 19
2.4 生成密钥 20
2.4.1 随机数发生器 24
2.4.2 伪随机数发生器 25
2.5 攻击加密的数据 27
2.5.1 攻击密钥 27
2.5.2 攻破算法 32
2.5.3 度量攻破消息所花费的时间 34
2.6 对称算法:密钥表 35
2.7 对称算法:分组密码和流密码 35
2.7.1 分组密码 35
2.7.2 流密码 37
2.7.3 分组密码与流密码的比较 41
2.8 数字加密标准 42
2.9 三重DES 43
2.10.1 高级加密标准 45
2.10 商业DES替代者 45
2.11 总结 46
2.12 现实实例:Oracle数据库 47
第3章 对称密钥管理 48
3.1 基于口令字的加密 49
3.1.1 编程方便性 55
3.1.2 攻破PBE 57
3.1.3 降低对口令字攻击的速度 58
3.1.4 好口令字 60
3.1.5 口令字生成器 61
3.2 基于硬件的密钥存储 63
3.2.1 令牌 63
3.2.2 密码加速器 67
3.2.3 硬件设备和随机数 69
3.3 生物统计学 69
3.5 现实示例 70
3.5.1 Keon桌面系统 70
3.4 总结 70
3.5.2 其他产品 72
第4章 密钥分发问题与公钥密码学 73
4.1 预先共享密钥 75
4.1.1 该方案的问题 76
4.2 使用可信的第三方 77
4.2.1 该方案的问题 79
4.3 公钥密码学与数字信封 80
4.4 安全问题 83
4.4.1 攻破公钥算法 84
4.5 公钥密码学历史 85
4.6 公钥密码系统的工作原理 86
4.6.1 RSA算法 89
4.6.2 DH算法 96
4.6.3 ECDH算法 101
4.7 算法比较 107
4.7.1 安全性 107
4.7.2 密钥长度 109
4.7.3 性能 110
4.7.4 传输长度 111
4.7.5 互操作性 111
4.8 保护私钥 112
4.9 将数字信封用于密钥恢复 112
4.9.1 通过可信任的第三方的密钥恢复 114
4.9.2 通过一组托管者的密钥恢复 115
4.9.3 使用门限方案的密钥恢复 116
4.9.4 门限方案的工作原理 119
4.10 总结 121
4.11 现实示例 121
第5章 数字签名 124
5.1 数字签名的惟一性 125
5.2 消息摘要 128
5.2.1 碰撞 131
5.2.2 三个重要的摘要算法 133
5.2.3 大块数据的表示 134
5.2.4 数据完整性 138
5.3 再谈数字签名 139
5.4 试图欺骗 142
5.5 实现认证、数据完整性和非否认 143
5.6 理解算法 144
5.6.1 RSA 145
5.6.2 DSA 145
5.7 算法比较 147
5.6.3 ECDSA 147
5.7.1 安全性 148
5.7.2 性能 148
5.7.3 传输长度 149
5.7.4 互操作性 149
5.8 保护私钥 150
5.9 证书简介 150
5.10 密钥恢复 153
5.11 总结 153
5.12 现实示例 154
第6章 公钥基础设施与X.509标准 155
6.1 公钥证书 156
6.1.1 惟一标识符 158
6.1.2 标准的版本3证书扩展项 158
6.1.3 实体名字 161
6.1.4 ASN.1表示法和编码 162
6.2 PKI的构成 163
6.2.1 证书颁发机构(CA) 163
6.2.2 注册机构(RA) 164
6.2.3 证书目录 164
6.2.4 密钥恢复服务器 165
6.2.5 管理协议 166
6.2.6 操作协议 167
6.3 注册和颁发证书 167
6.4 吊销证书 168
6.4.1 证书吊销列表(CRL) 169
6.4.3 机构吊销列表(ARL) 173
6.4.2 挂起证书 173
6.5 信任模型 174
6.5.1 认证层次结构 175
6.5.2 交叉认证 176
6.5.3 X.509证书链 177
6.5.4 推模型与拉模型 178
6.6 管理密钥对 179
6.6.1 生成密钥对 179
6.6.2 保护私钥 180
6.6.3 管理多个密钥对 181
6.6.4 更新密钥对 182
6.6.5 保存密钥对的历史记录 182
6.7 实施PKI 183
6.8 PKI的未来 184
6.8.1 漫游证书 184
6.8.2 属性证书 185
6.9 证书策略与认证实施说明(CPS) 186
6.11.1 Keon证书服务器 188
6.10 总结 188
6.11 现实示例 188
6.11.2 Keon Web护照 189
第7章 网络层和传输层安全协议 190
7.1 Internet安全协议 191
7.1.1 IP Sec安全体系结构 191
7.1.2 IPSec服务 191
7.2 认证头协议 192
7.2.1 完整性检验值的计算 193
7.2.2 传输模式和隧道模式 194
7.3 封装安全载荷协议 195
7.3.1 加密算法 197
7.3.2 传输模式和隧道模式中的ESP 197
7.4 安全关联 198
7.5 安全数据库 201
7.5.1 安全策略数据库 201
7.5.2 安全关联数据库 202
7.6 密钥管理 203
7.7 安全套接字协议层 206
7.8 会话和连接状态 207
7.9 记录层协议 208
7.10 更改密码规范协议 210
7.11 警告协议 210
7.12 握手协议 211
7.12.1 Client Hello消息 212
7.12.2 Server Hello消息 213
7.12.3 Server Certificate消息 214
7.12.4 Server Key Exchange消息 215
7.12.5 Certificate Request消息 215
7.12.6 Server Hello Done消息 215
7.12.7 Client Certificate消息 215
7.12.8 Client Key Exchange消息 215
7.12.9 Certificate Verify消息 216
7.12.12 会话重用 217
7.12.11 结束会话和连接 217
7.12.10 Finished消息 217
7.12.13 密码计算 218
7.12.14 加密和认证算法 218
7.13 总结 219
7.14 现实示例 219
第8章 应用层安全协议 221
8.1 S/MIME 221
8.1.1 概述 222
8.1.2 S/MIME的功能 222
8.1.3 密码算法 223
8.1.4 S/MIME消息 224
8.1.5 增强的安全服务 229
8.1.6 互操作性 230
8.2 安全电子交易(SET) 230
8.2.1 商业需求 231
8.2.3 SET参与者 232
8.2.2 SET的特点 232
8.2.4 双重签名 234
8.2.5 SET证书 235
8.2.6 支付处理 236
8.3 总结 239
8.4 现实示例 240
第9章 硬件解决方案:克服软件的限制 241
9.1 密码加速器 241
9.2.1 令牌形状因子 243
9.2 认证令牌 243
9.2.2 非接触式令牌 244
9.2.3 接触式令牌 247
9.3 智能卡 248
9.3.1 智能卡标准 248
9.3.2 智能卡类型 249
9.3.3 读卡器和终端 250
9.4 Java卡 251
9.4.2 Java卡操作 252
9.4.1 历史和标准 252
9.5 其他Java令牌 253
9.6 生物统计学 253
9.6.1 生物统计学系统概述 254
9.6.2 识别方法 256
9.6.3 生物统计学精确度 259
9.7 组合各种认证方法 260
9.8 总结 261
9.9 厂商 262
第10章 关于数字签名的其他话题 263
10.1 法律途径 264
10.2 美国律师协会的法律指南 265
10.3 与数字签名有关的法律概念 265
10.3.1 非否认 266
10.3.2 认证 267
10.4 使用数字签名的先决条件 268
10.3.3 手写签名与数字答名 268
10.4.1 公钥基础设施(PKI) 269
10.4.2 密钥吊销的控制 269
10.4.3 时戳 269
10.5 现行的和即将分布的立法 270
10.6 法律上不确定性的处理 274
10.7 总结 274
10.8 现实示例 275
11.1 估计损失 276
第11章 失败的实施——非法闯入 276
11.2 安全威胁的种类 277
11.2.1 数据的非授权泄漏 278
11.2.2 数据的非授权修改 278
11.2.3 非授权访问 279
11.2.4 网络通信泄漏 279
11.2.5 网络通信欺骗 280
11.3.3 恐怖分子 281
11.3.2 黑客 281
11.3.1 内部人员 281
11.3 识别入侵者 281
11.3.4 外国情报部门 282
11.3.5 黑客激进分子 282
11.3.6 入侵者的知识 283
11.4 案例分析 283
11.4.1 传输中的数据 283
11.4.2 静态的数据 284
11.4.3 认证 285
11.4.4 实施 286
11.5 信息安全:法律实施 287
11.6 总结 287
第12章 成功的实施——遵从标准 289
12.1 安全服务与机制 289
12.1.1 认证 290
12.1.2 保密性 291
12.2 标准、指南和法规 292
12.1.4 非否认性 292
12.1.3 完整性 292
12.2.1 Internet工程任务组 293
12.2.2 ASNI X9 293
12.2.3 国家标准技术研究所 294
12.2.4 公共准则 295
12.2.5 健康保险信息标准化法案 295
12.3 开发者帮助 296
12.3.1 保险 296
12.4 案例分析 297
12.3.2 安全研究 297
12.4.1 实现 298
12.4.2 认证 298
12.4.3 静态数据 299
12.4.4 传输中的数据 300
12.5 总结 300
附录A 比特、字节、十六进制和ASCII码 302
附录B ASN.1子集(BER和DER)非专业人员指南 308
附录C 进一步的技术细节 348