作者:唐四薪
出版社:清华大学出版社 出版时间:2020年07月
前 言
电子商务的安全问题一直是电子商务发展的最大障碍。电子商务在给人们的生活和工作带来便利的同时,安全问题也日渐突出。
为此,大多数高校的电子商务、信息安全等专业都开设了《电子商务安全》的课程。《电子商务安全》这门课程在电子商务专业的课程体系中具有承前启后的作用。电子商务安全的先修课程是《电子商务概论》和《计算机网络》,后继课程有《电子商务系统设计》等。学习电子商务安全一方面可以加深对电子商务概论和计算机网络中相关知识的理解,另一方面由于安全是电子商务系统设计中最重要的考虑因素,电子商务系统中很多实现技术都与安全有关,因此又能加深对电子商务系统和电子商务关键技术的理解。
《电子商务安全》这门课程起源于《密码学与网络安全》,因为没有密码学(特别是公钥密码学)理论和网络安全技术,当今的电子商务就失去了技术基础而不可能存在。直到现在,电子商务安全的基础内容还是以密码学与网络安全为主,只是将这些知识放在电子商务的环境中进行介绍。《电子商务安全》和《密码学与网络安全》这两门课程相互促进、相互发展。《密码学与网络安全》的书籍中也出现了越来越多关于电子商务安全方面的知识,体现了电子商务安全已越来越受到人们重视。
当然,《电子商务安全》和《密码学与网络安全》又是有所区别的,电子商务安全的目的是紧紧围绕保障电子商务活动的安全,因此,密码学中一些与保障电子商务安全关系不大的技术就不是电子商务安全的研究范围,同时,密码学研究的内容偏向于底层密码算法或密码协议的实现和安全证明,而电子商务安全研究的内容则偏向于上层应用(如密码技术的应用)。因此,电子商务安全在教学中应把握住这一侧重点,才能促进该门课程的进一步完善,本书在写作过程中力求突出电子商务安全的特色,这表现在:
(1)将密码学与网络安全中涉及较深数学知识及较复杂的密码算法部分从略,但保留一些基本的密码学原理和一些必要的数学知识。例如,在公钥密码算法方面,主要介绍RSA和DH两种算法,因为这两种算法比较简单,但又能使学生明白公钥密码体制的原理,而且在目前仍然是使用最广泛的密码算法。这是考虑到电子商务专业学生学习基础而定的。
(2)处理好电子商务安全原理和应用之间的关系。原理是基础,对电子商务安全的基础问题如加密和认证技术做了较详细通俗且符合认知逻辑的阐述,使读者能更深刻地理解电子商务安全问题产生的根源。同时增加了单点登录技术、电子现金与微支付的安全机制和电子商务网站安全这些富有特色和实用性的内容,并对一些特殊的数字签名和散列链进行了论述,因为这些技术在目前电子商务前沿领域应用很广泛。在编写形式上,叙述详细,重点突出。在阐述基本原理时大量的结合实例来分析,做到通俗生动。采用问题启发式教学,一步步引出各种加密、认证技术的用途。
(3)辩证地看待电子商务安全在技术和管理方面的教学需要。虽然说电子商务安全是“三分技术、七分管理”。但毋庸置疑的事实是,目前绝大多数电子商务安全教材在篇幅安排上都是“七分技术、三分管理”,这样安排是有道理的。因为大学教育的主要目是为学生打基础,对于技术知识,学生要自学掌握是比较困难的,因此教师有必要重点阐述使学生能理解这部分知识,而管理知识学生可以通过将来在实际工作中掌握,只有有了一定的实践经验才能更有效地学习和理解安全管理方面的内容。
本书的知识结构可分为概述、原理、应用三大块,知识结构如下:第1章为概述,第2~4章为密码学的内容,第5~7章为网络安全技术的内容,第8~10章为电子商务安全具体的应用方面的内容,第11章为安全管理的内容。
第1章电子商务安全概述1
1.1电子商务安全的现状1
1.1.1电子商务安全的重要性2
1.1.2电子商务安全现状分析4
1.1.3电子商务安全课程的知识结构6
1.2电子商务安全的内涵7
1.2.1计算机网络安全7
1.2.2电子交易安全9
1.2.3电子商务安全的特点10
1.3电子商务安全的基本需求11
1.3.1电子商务面临的安全威胁11
1.3.2电子商务安全要素12
1.4电子商务安全技术15
1.5电子商务安全体系16
1.5.1电子商务安全体系结构16
1.5.2电子商务安全的管理架构17
1.5.3电子商务安全的基础环境19
习题20第2章密码学基础22
2.1密码学的基本知识22
2.1.1密码学的基本概念22
2.1.2密码体制的分类24
2.1.3密码学的发展历程26
2.1.4密码分析与密码系统的安全性26
2.2对称密码体制28
2.2.1古典密码体制28
2.2.2分组密码体制与DES36
2.2.3流密码体制40
2.3密码学的数学基础43
2.3.1数论的基本概念43
2.3.2数论四大定理46
2.3.3欧几里得算法47
2.3.4离散对数50
2.4公钥密码体制51
2.4.1公钥密码体制的基本思想51
2.4.2RSA公钥密码体制53
2.4.3DiffieHellman密钥交换算法56
2.4.4ElGamal公钥密码算法58
2.4.5椭圆曲线密码体制60
2.5公钥密码体制解决的问题65
2.5.1密钥分配65
2.5.2密码系统密钥管理问题67
2.5.3数字签名问题68
2.6数字信封69
2.7单向散列函数70
2.7.1单向散列函数的性质70
2.7.2对单向散列函数的攻击71
2.7.3单向散列函数的设计及MD5算法73
2.7.4单向散列函数的分类75
2.7.5散列链76
2.8数字签名77
2.8.1数字签名的特点77
2.8.2数字签名的过程78
2.8.3RSA数字签名算法79
2.8.4ElGamal数字签名算法80
2.8.5Schnorr数字签名算法82
2.8.6前向安全数字签名83
2.8.7特殊的数字签名85
2.9密钥管理与密钥分配90
2.9.1密钥管理91
2.9.2密钥的分配93
2.10信息隐藏技术97
习题99第3章认证技术101
3.1消息认证101
3.1.1利用对称密码体制实现消息认证101
3.1.2利用公钥密码体制实现消息认证102
3.1.3利用散列函数实现消息认证103
3.1.4利用消息认证码实现消息认证105
3.2身份认证106
3.2.1身份认证的依据106
3.2.2身份认证系统的组成107
3.2.3身份认证的分类107
3.3口令机制108
3.3.1口令的基本工作原理108
3.3.2对口令机制的改进109
3.3.3对抗重放攻击的措施111
3.3.4基于挑战应答的口令机制116
3.3.5口令的维护和管理措施118
3.4常用的身份认证协议119
3.4.1一次性口令119
3.4.2零知识证明122
3.4.3认证协议设计的基本要求123
3.4.4其他身份认证的机制124
3.5单点登录技术126
3.5.1单点登录的好处126
3.5.2单点登录系统的分类127
3.5.3单点登录的实现方式129
3.5.4Kerberos认证协议130
3.5.5SAML标准135
习题140第4章数字证书和公钥基础设施141
4.1数字证书141
4.1.1数字证书的概念141
4.1.2数字证书的原理142
4.1.3数字证书的生成144
4.1.4数字证书的验证145
4.1.5数字证书的内容和格式149
4.1.6数字证书的类型150
4.2数字证书的功能151
4.2.1数字证书用于加密和签名152
4.2.2利用数字证书进行身份认证153
4.3公钥基础设施155
4.3.1PKI的组成和部署156
4.3.2PKI管理机构——CA159
4.3.3注册机构——RA162
4.3.4证书/CRL库163
4.3.5PKI的信任模型164
4.3.6PKI的技术标准167
4.4个人数字证书的使用168
4.4.1申请数字证书168
4.4.2查看个人数字证书169
4.4.3数字证书的导入和导出171
4.4.4U盾的原理172
4.4.5利用数字证书实现安全电子邮件174
4.5安装和使用CA服务器177
习题182第5章网络安全基础184
5.1网络安全体系模型184
5.1.1网络体系结构及其安全缺陷185
5.1.2OSI安全体系结构187
5.1.3网络安全的分层配置189
5.1.4网络安全的加密方式190
5.2网络安全的常见威胁191
5.2.1漏洞扫描191
5.2.2拒绝服务攻击192
5.2.3嗅探195
5.2.4欺骗197
5.2.5伪装198
5.3Windows网络检测和管理命令198
5.4计算机病毒及其防治202
5.4.1计算机病毒的定义和特征202
5.4.2计算机病毒的分类203
5.4.3计算机病毒的防治205
习题207第6章防火墙和入侵检测系统208
6.1访问控制概述208
6.1.1访问控制的相关概念208
6.1.2访问控制的具体实现机制210
6.1.3访问控制策略211
6.1.4属性证书与PMI214
6.2防火墙215
6.2.1防火墙的概念216
6.2.2防火墙的用途216
6.2.3防火墙的弱点和局限性218
6.2.4防火墙的设计准则219
6.3防火墙的主要技术219
6.3.1静态包过滤技术219
6.3.2动态包过滤技术222
6.3.3应用层网关223
6.3.4防火墙的实现技术比较223
6.4防火墙的体系结构224
6.4.1包过滤防火墙224
6.4.2双重宿主主机防火墙225
6.4.3屏蔽主机防火墙225
6.4.4屏蔽子网防火墙226
6.5入侵检测系统227
6.5.1入侵检测系统概述227
6.5.2入侵检测系统的数据来源229
6.5.3入侵检测技术230
6.5.4入侵检测系统的结构232
习题234第7章电子商务安全协议236
7.1SSL概述236
7.2SSL的工作过程237
7.2.1SSL握手协议238
7.2.2SSL记录协议242
7.2.3SSL的应用模式243
7.2.4SSL在网上银行的应用案例245
7.2.5为IIS网站启用SSL246
7.3SET249
7.3.1SET概述249
7.3.2SET系统的参与者250
7.3.3SET的工作流程251
7.3.4对SET的分析256
7.3.5SSL与SET的比较257
7.43D Secure258
7.5IPSec260
7.5.1IPSec概述260
7.5.2IPSec的体系结构261
7.5.3IPSec的工作模式262
7.6虚拟专用网264
7.6.1VPN概述265
7.6.2VPN的类型266
7.6.3VPN的关键技术267
7.6.4隧道技术268
习题271第8章电子支付及其安全272
8.1电子支付安全概述272
8.1.1电子支付与传统支付的比较272
8.1.2电子支付系统的分类273
8.1.3电子支付的安全性274
8.2电子现金275
8.2.1电子现金的基本特性275
8.2.2电子现金系统中使用的密码技术276
8.2.3电子现金的支付模型和实例277
8.3电子现金安全需求的实现280
8.3.1不可伪造性和独立性280
8.3.2匿名性280
8.3.3多银行性283
8.3.4不可重用性284
8.3.5可转移性285
8.3.6可分性286
8.3.7电子现金的发展趋势287
8.4电子支票288
8.4.1电子支票的支付过程288
8.4.2电子支票的安全方案和特点289
8.4.3NetBill电子支票290
8.5微支付292
8.5.1微支付的交易模型292
8.5.2基于票据的微支付系统293
8.5.3基于散列链的微支付模型299
8.5.4常见微支付协议的比较303
习题304第9章电子商务网站和移动App的安全305
9.1网站的安全风险和防御措施305
9.1.1网站的安全性分析305
9.1.2网站服务器的基本安全设置307
9.2SQL注入攻击310
9.2.1SQL注入攻击的特点311
9.2.2SQL注入攻击的方法312
9.2.3SQL注入漏洞检测与SQL注入攻击的防范314
9.3跨站脚本攻击318
9.3.1跨站脚本攻击的原理及危害318
9.3.2防范跨站脚本攻击的方法320
9.4网页挂马322
9.4.1网页挂马的常见形式322
9.4.2网页挂马的方法324
9.5移动App的安全325
9.5.1Android系统的结构和组件325
9.5.2Android系统的安全机制326
9.5.3移动App面临的安全威胁327
习题328第10章云计算与移动电子商务安全329
10.1云计算的安全329
10.1.1云计算的概念和特点329
10.1.2云计算环境下的电子商务安全架构331
10.2云计算安全的内涵332
10.2.1云数据安全333
10.2.2云计算的授权管理、访问控制和多租户共享335
10.3移动电子商务面临的安全威胁335
10.3.1无线网络技术336
10.3.2无线网络的安全威胁337
10.4移动电子商务安全技术339
10.4.1移动电子商务的安全需求339
10.4.2无线公钥基础设施340
10.4.3WPKI与PKI的技术对比343
10.4.4WTLS协议346
10.4.5无线网络的物理安全技术350
习题352第11章电子商务安全管理353
11.1电子商务安全管理体系353
11.1.1电子商务安全管理的内容354
11.1.2电子商务安全管理策略355
11.1.3安全管理的PDCA模型356
11.2电子商务安全评估357
11.2.1电子商务安全评估的内容357
11.2.2安全评估标准357
11.2.3信息管理评估标准359
11.3电子商务安全风险管理360
11.3.1风险管理概述360
11.3.2风险评估361
11.4电子商务信用管理363
11.4.1电子商务信用管理概述363
11.4.2电子商务信用管理的必要性364
11.4.3信用管理体系的构成365
11.4.4信用保障和评价机制366
习题368附录A实验369
A.1实验1: 密码学软件的使用和开发369
A.2实验2: 个人数字证书的使用370
A.3实验3: CA的安装和使用370
A.4实验4: 网络扫描和网络嗅探371
A.5实验5: 为IIS网站配置SSL371
A.6实验6: Web服务器和网站的安全配置372
参考文献373