第1篇 网络安全基础 1
第1章 网络安全概论 1
1.1 对网络安全的需求 1
目录 1
1.1.1 网络安全发展态势 2
1.1.2 敏感信息对安全的需求 4
1.1.3 网络应用对安全的需求 4
1.2 安全威胁与防护措施 5
1.2.1 基本概念 5
1.2.2 安全威胁的来源 5
1.2.3 安全防护措施 8
1.3 网络安全策略 9
1.3.1 授权 10
1.3.2 访问控制策略 10
1.4.1 被动攻击 11
1.3.3 责任 11
1.4 安全攻击的分类 11
1.4.2 主动攻击 12
1.5 网络攻击的常见形式 12
1.5.1 口令窃取 12
1.5.2 欺骗攻击 14
1.5.3 缺陷和后门攻击 14
1.5.4 认证失效 16
1.5.5 协议缺陷 16
1.5.6 信息泄露 17
1.5.7 指数攻击——病毒和蠕虫 17
1.5.8 拒绝服务攻击 18
1.6 开放系统互连安全体系结构 20
1.6.1 安全服务 21
1.6.3 安全服务与安全机制的关系 24
1.6.2 安全机制 24
1.6.4 在OSI层中的服务配置 25
习题 26
第2章 低层协议的安全性 27
2.1 基本协议 27
2.1.1 IP 28
2.1.2 ARP 29
2.1.3 TCP 30
2.1.4 SCTP 32
2.1.5 UDP 32
2.1.6 ICMP 33
2.2 地址和域名管理 34
2.2.1 路由协议 34
2.2.2 域名系统 36
2.2.3 BOOTP和DHCP 39
2.3.1 IPv6简介 40
2.3 IPv6 40
2.3.2 IPv6地址 42
2.3.3 IPv6地址配置 43
2.3.4 邻居发现协议 44
2.3.5 移动IPv6 45
2.3.6 IPv6的安全性 46
2.4 网络地址转换器 47
2.5 无线网的安全 48
习题 50
第3章 高层协议的安全性 52
3.1 消息发送 52
3.1.1 SMTP 52
3.1.2 MIME 55
3.1.3 POP3 57
3.1.4 IMAP4 58
3.1.5 即时消息 59
3.2 因特网电话 60
3.2.1 H.323 60
3.2.2 SIP 61
3.3 基于RPC的协议 61
3.3.1 RPC与Rpcbind 61
3.3.2 NIS 65
3.3.3 NFS 66
3.3.4 AFS 68
3.4 TFTP和FTP 68
3.4.1 TFTP 68
3.4.2 FTP 69
3.4.3 SMB协议 72
3.5 远程登录协议 73
3.5.1 Telnet 73
3.5.2 “r”命令 74
3.5.3 SSH 75
3.6 SNMP 76
3.7 NTP 78
3.8 信息服务 79
3.8.1 Finger——用户查询服务 79
3.8.2 Whois——数据库查询服务 79
3.8.3 LDAP 80
3.8.4 WWW服务 83
3.8.5 NNTP——网络消息传输协议 84
3.8.6 多播及MBone 85
3.9 专有协议 86
3.9.1 RealAudio 86
3.9.2 Oracle的SQL*Net 87
3.9.3 其他专用服务 87
3.10 对等实体联网 87
3.11 X11视窗系统 89
3.12 其他小的服务 90
习题 91
第2篇 保密学基础 92
第4章 单(私)钥加密体制 92
4.1 密码体制的定义 92
4.2 古典密码 94
4.2.1 代换密码 94
4.2.2 换位密码 97
4.2.3 古典密码的安全性 98
4.3 流密码的基本概念 99
4.3.1 流密码框图和分类 100
4.3.2 密钥流生成器的结构和分类 102
4.3.3 密钥流的局部统计检验 103
4.3.4 随机数与密钥流 103
4.4.2 加法流密码生成器 104
4.4 快速软、硬件实现的流密码算法 104
4.4.1 A5 104
4.4.3 RC4 106
4.4.4 SEAL 108
4.4.5 PKZIP 109
4.5 分组密码概述 110
4.6 数据加密标准 113
4.6.1 DES介绍 113
4.6.2 DES的核心作用:消息的随机非线性分布 115
4.6.3 DES的安全性 116
4.7 高级加密标准 117
4.7.1 Rijndael密码概述 117
4.7.2 Rijndael密码的内部函数 119
4.7.3 Rijndael内部函数的功能小结 122
4.7.4 AES对应用密码学的积极影响 122
4.8.1 IDEA 123
4.8 其他重要的分组密码算法 123
4.8.2 SAFER K-64 126
4.8.3 RC5 129
4.9 分组密码的工作模式 131
4.9.1 电码本模式 132
4.9.2 密码分组链接模式 133
4.9.3 密码反馈模式 133
4.9.4 输出反馈模式 134
4.9.5 计数器模式 135
习题 136
第5章 双(公)钥密码体制 137
5.1 双钥密码体制的基本概念 138
5.1.1 单向函数 138
5.1.2 陷门单向函数 139
5.1.3 公钥系统 139
5.1.4 用于构造双钥密码的单向函数 140
5.2 RSA密码体制 142
5.2.1 体制 143
5.2.2 RSA的安全性 144
5.2.3 RSA的参数选择 148
5.2.4 RSA体制实用中的其他问题 150
5.2.5 RSA的实现 150
5.2.6 RSA体制的推广 151
5.3 背包密码体制 151
5.3.1 背包问题 151
5.3.2 简单背包 152
5.3.3 Merkle-Hellman陷门背包 152
5.3.4 M-H体制的安全性 153
5.3.5 背包体制的缺陷 154
5.3.6 其他背包体制 154
5.4.2 Williams体制 155
5.4 Rabin密码体制 155
5.4.1 Rabin体制 155
5.5 ElGamal密码体制 156
5.5.1 方案 156
5.5.2 加密 157
5.5.3 安全性 157
5.6 椭圆曲线密码体制 157
5.6.1 实数域上的椭圆曲线 158
5.6.2 有限域Zp上的椭圆曲线 159
5.6.3 GF(2m)上的椭圆曲线 161
5.6.4 椭圆曲线密码 162
5.6.5 椭圆曲线的安全性 163
5.6.6 ECC的实现 164
5.6.7 当前ECC的标准化工作 165
5.6.9 用圆锥曲线构造双钥密码体制 166
5.6.8 椭圆曲线上的RSA密码体制 166
5.7 其他双钥密码体制 167
5.7.1 McEliece密码体制 167
5.7.2 LUC密码体制 168
5.7.3 有限自动机体制 169
5.7.4 概率加密体制 169
5.7.5 秘密共享密码体制 170
5.7.6 多密钥公钥密码体制 171
5.8 公钥密码体制的分析 172
习题 173
第6章 消息认证与杂凑函数 175
6.1 认证函数 175
6.1.1 消息加密 175
6.1.2 消息认证码 180
6.1.3 杂凑函数 182
6.2.1 对MAC的要求 184
6.2 消息认证码 184
6.1.4 杂凑函数的性质 184
6.2.2 基于密钥杂凑函数的MAC 186
6.2.3 基于分组加密算法的MAC 187
6.3 杂凑函数 187
6.3.1 单向杂凑函数 187
6.3.2 杂凑函数在密码学中的应用 188
6.3.3 分组迭代单向杂凑算法的层次结构 188
6.3.4 迭代杂凑函数的构造方法 189
6.3.5 基本迭代函数的选择 191
6.3.6 应用杂凑函数的基本方式 194
6.4 MD-4和MD-5 196
6.4.1 算法步骤 196
6.4.2 MD-5的安全性 199
6.5 安全杂凑算法 200
6.4.5 MD-2和MD-3 200
6.4.3 MD-5的实现 200
6.4.4 MD-4与MD-5的算法差别 200
6.5.1 算法 201
6.5.2 SHA的安全性 203
6.5.3 SHA与MD-4,MD-5的比较 204
6.6 其他杂凑算法 205
6.6.1 RIPEMD-160 205
6.6.2 SNEFRU算法 205
6.6.4 HAVAL算法 206
6.6.3 GOST杂凑算法 206
6.6.5 RIPE-MAC 207
6.6.6 其他 207
6.7 HMAC 207
习题 208
第7章 数字签名 210
7.1 数字签名基本概念 210
7.3 Rabin签名体制 212
7.2 RSA签名体制 212
7.4 ElGamal签名体制 213
7.5 Schnorr签名体制 215
7.6 DSS签名标准 216
7.6.1 概况 216
7.6.2 签名和验证签名的基本框图 217
7.6.3 算法描述 217
7.6.4 DSS签名和验证框图 218
7.6.5 公众反应 218
7.6.6 实现速度 219
7.7 GOST签名标准 219
7.8 ESIGN签名体制 221
7.9 Okamoto签名体制 222
7.10 OSS签名体制 223
7.11.2 不可否认签名 224
7.11.1 离散对数签名体制 224
7.11 其他数字签名体制 224
7.11.3 防失败签名 225
7.11.4 盲签名 225
7.11.5 群签名 225
7.11.6 代理签名 226
7.11.7 指定证实人的签名 227
7.11.8 一次性数字签名 227
7.11.9 双有理签名方案 228
7.11.10 数字签名的应用 228
习题 228
第8章 密码协议 229
8.1 协议的基本概念 229
8.1.1 仲裁协议 230
8.1.2 裁决协议 231
8.1.3 自动执行协议 232
8.2 安全协议分类及基本密码协议 233
8.2.1 密钥建立协议 234
8.2.2 认证建立协议 239
8.2.3 认证的密钥建立协议 243
8.3 秘密分拆协议 253
8.4 秘密广播协议和会议密钥分配 254
8.4.1 秘密广播协议 254
8.4.2 会议密钥分配协议 256
8.4.3 Tatebayashi-Matsuzaki-Newman协议 256
8.5 密码协议的安全性 257
8.5.1 对协议的攻击 257
8.5.2 密码协议的安全性分析 261
习题 263
第9章 PKI与PMI 264
9.1 PKI的组成 264
第3篇 网络安全实践 264
9.1.1 实施PKI服务的实体 265
9.1.2 认证中心 269
9.1.3 注册中心 272
9.2 证书 277
9.2.1 X.509证书 278
9.2.2 证书扩展项 281
9.3 属性证书和漫游证书 282
9.3.1 属性证书 283
9.3.2 漫游证书 283
9.4 PKI/CA认证系统实例 284
9.5 PMI介绍 285
9.5.1 PMI概况 285
9.5.2 权限管理基础设施 288
9.5.3 属性权威 290
9.5.4 权限管理 292
9.5.5 访问控制框架 294
9.5.6 策略规则 296
9.5.7 基于PMI建立安全应用 296
习题 299
第10章 网络加密与密钥管理 300
10.1 网络加密的方式及实现 300
10.2 硬件加密、软件加密及有关问题 304
10.2.1 硬件加密的优点 304
10.2.2 硬件种类 305
10.2.3 软件加密 305
10.2.4 存储数据加密的特点 305
10.2.5 文件删除 306
10.3 密钥管理基本概念 306
10.3.1 密钥管理 306
10.3.2 密钥的种类 308
10.4.2 密钥长度与穷举破译时间和成本估计 309
10.4.1 密钥必须足够长 309
10.4 密钥的长度与安全性 309
10.4.3 软件攻击 310
10.4.4 密钥多长合适 311
10.4.5 双钥体制的密钥长度 311
10.5 密钥生成 311
10.5.1 选择密钥方式不当会影响安全性 312
10.5.2 好的密钥 312
10.5.3 不同等级的密钥产生的方式不同 313
10.5.4 双钥体制下的密钥生成 313
10.6 密钥分配 313
10.6.1 基本方法 313
10.6.2 密钥分配的基本工具 314
10.6.3 密钥分配系统的基本模式 315
10.6.4 TTP 316
10.6.6 密钥注入 317
10.6.5 协议的选用 317
10.7 密钥的证实 318
10.7.1 单钥证书 319
10.7.2 公钥的证实技术 319
10.7.3 公钥认证树 320
10.7.4 公钥证书 321
10.7.5 基于身份的公钥系统 321
10.7.6 隐式证实公钥 322
10.8 密钥的保护、存储与备份 324
10.8.1 密钥的保护 324
10.8.2 密钥的存储 325
10.8.3 密钥的备份 326
10.9 密钥的泄露、吊销、过期与销毁 326
10.9.1 泄露与吊销 326
10.9.2 密钥的有效期 326
10.10 密钥控制 327
10.9.3 密钥销毁 327
10.11 多个管区的密钥管理 329
10.12 密钥托管和密钥恢复 331
10.12.1 密钥托管体制的基本组成 331
10.12.2 密钥托管体制实例——EES 335
10.12.3 其他密钥托管体制 339
10.13 密钥管理系统 339
习题 341
第11章 无线网络安全 343
11.1 无线蜂窝网络技术 343
11.1.1 无线传输系统 343
11.1.2 高级移动电话系统 344
11.1.3 时分多址 344
11.1.4 全球移动通信系统 344
11.1.8 第2.5代技术 345
11.1.7 码分多址 345
11.1.6 个人数字蜂窝 345
11.1.5 蜂窝式数字分组数据 345
11.1.9 第3代技术 346
11.2 无线数据网络技术 347
11.2.1 扩谱技术 347
11.2.2 正交频分复用 349
11.2.3 IEEE制定的无线局域网标准 349
11.2.4 无线局域网络的工作模式 350
11.2.5 IEEE制定的无线城域网络标准 351
11.2.6 中国无线局域网国家标准WAPT 351
11.2.7 蓝牙 352
11.2.8 HomeRF技术 353
11.2.9 无线应用协议 353
11.3 无线蜂窝网络的安全性 355
11.3.1 GSM安全性分析 355
11.3.2 CDMA的安全性分析 358
11.3.3 第3代移动通信系统的安全性分析 361
11.4 无线数据网络的安全性 364
11.4.1 有线同等保密协议 364
11.4.2 802.lx协议介绍 367
11.4.3 802.lli标准介绍 369
11.4.4 802.l6标准的安全性 373
11.4.5 WAPI标准简介 376
11.4.6 WAP协议的安全性 378
11.5 无线网络面临的安全威胁 381
11.6 针对安全威胁的解决方案 384
11.6.1 采用安全策略 384
11.6.2 用户安全教育 384
11.6.3 MAC地址过滤 384
11.6.8 利用入侵检测系统监测网络 385
11.6.7 虚拟专用网 385
11.6.9 采用安全的路由协议 385
11.6.5 天线的选择 385
11.6.4 SSID问题解决方案 385
11.6.6 VLAN和防火墙的使用 385
习题 386
第12章 防火墙原理与设计 387
12.1 防火墙概述 388
12.2 防火墙的类型和结构 390
12.2.1 防火墙分类 391
12.2.2 网络地址翻译 393
12.3 静态包过滤器 395
12.3.1 工作原理 395
12.3.2 设计与实现 397
12.3.3 静态包过滤器的优缺点 399
12.4 电路级网关 399
12.4.1 工作原理 400
12.4.2 电路级网关的优缺点 403
12.5.1 工作原理 404
12.5 应用层网关 404
12.5.2 应用网关的优缺点 407
12.6 动态包过滤防火墙 408
12.6.1 动态包过滤防火墙原理 409
12.6.2 设计实现 409
12.6.3 动态包过滤防火墙的优缺点 418
12.7 状态检测防火墙 419
12.7.1 工作原理 419
12.7.2 设计与实现 420
12.7.3 状态检测防火墙的优缺点 422
12.8 切换代理 423
12.8.1 工作原理 423
12.8.2 设计与实现 423
12.8.3 切换代理的优缺点 423
12.9.1 工作原理 425
12.9 空气隙防火墙 425
12.9.2 空气隙防火墙的优缺点 426
12.10 分布式防火墙 426
12.10.1 工作原理 426
12.10.2 分布式防火墙的优缺点 427
12.11 关于防火墙其他问题的思考 428
12.11.1 硬件化 428
12.11.2 多功能化 429
12.11.3 安全性 429
习题 429
第13章 入侵检测系统 431
13.1 IDS的概述 431
13.1.1 IDS的历史 431
13.1.2 IDS的分类 432
13.1.3 IDS的作用 432
13.1.4 IDS的任务 433
13.1.5 IDS的主要功能 435
13.1.6 IDS的评价标准 435
13.1.7 IDS的典型部署 437
13.2 IDS的设计 437
13.2.1 CIDF的模型 437
13.2.2 NIDS的设计 438
13.2.3 NIDS的关键技术 446
13.2.4 HIDS的设计 455
13.2.5 HIDS的关键技术 456
13.2.6 控制台的设计 459
13.2.7 自身安全设计 460
13.3 IDS的发展方向 461
习题 464
14.1.2 VPN的特点 465
14.1.1 VPN概念 465
14.1 VPN概述 465
第14章 VPN的设计与实现 465
14.1.3 VPN的分类 466
14.2 VPN关键技术 467
14.2.1 隧道封装技术 468
14.2.2 密码技术 470
14.2.3 身份鉴别和认证技术 470
14.2.4 QoS技术 472
14.3 隧道协议与VPN实现 473
14.3.1 PPTP 473
14.3.2 L2F 473
14.3.3 L2TP 474
14.3.4 MPLS 479
14.3.5 IPSec 483
14.3.6 SSL 493
14.3.7 SOCKS 496
14.4 VPN网络的配置与实现 497
14.4.1 Windows 2000系统中VPN连接的设置 497
14.4.2 Linux系统中VPN连接的设置 500
14.5 VPN安全性分析 501
习题 505
第15章 身份认证 506
15.1 身份证明 506
15.1.1 身份欺诈 506
15.1.2 身份证明系统的组成和要求 507
15.1.3 身份证明的基本分类 508
15.1.4 实现身份证明的基本途径 508
15.2 通行字认证系统 509
15.2.1 概述 509
15.2.2 通行字的控制措施 512
15.2.4 通行字的安全存储 513
15.2.3 通行字的检验 513
15.3 个人特征的身份证明技术 514
15.3.1 手书签名验证 515
15.3.2 指纹验证 516
15.3.3 语音验证 517
15.3.4 视网膜图样验证 517
15.3.5 虹膜图样验证 517
15.3.6 脸型验证 518
15.3.7 身份证实系统的设计 518
15.4 零知识证明的基本概念 519
15.4.1 概述 519
15.4.2 零知识证明的基本协议 519
15.4.3 并行零知识证明 522
15.4.4 使第三者相信的协议(零知识) 522
15.4.5 非交互式零知识证明 522
15.5.1 Feige-Fiat-Shamir体制 523
15.4.6 一般化理论结果 523
15.5 零知识身份证明的密码体制 523
15.5.2 GQ识别体制 527
15.5.3 Schnorr识别体制 528
15.5.4 Fiat-Shamir,GQ和Schnorr体制的比较 528
15.5.5 离散对数的零知识证明体制 529
15.5.6 公钥密码体制破译的零知识证明 530
15.6 身份认证协议实践 531
15.6.1 安全壳远程登录协议 531
15.6.2 Kerberos协议及其在Windows 2000系统中的实现 535
15.6.3 SSL和TLS 540
15.7 智能卡技术及其应用 543
习题 546
参考文献 547