2022年电子商务安全协议及支付安全 .pdf
《2022年电子商务安全协议及支付安全 .pdf》由会员分享,可在线阅读,更多相关《2022年电子商务安全协议及支付安全 .pdf(11页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、5.1.1 SSL 协议工作原理SSL 协议处于互联网多层协议集的传输层上,运行在TCP/IP 协议之上而在其他高层协议(如 HTTP 、Telnet、FTP 和 IMAP 等)之下,如图5-1 所示。在建立一次SSL 连接之前,首先建立 TCP/IP 连接。 SSL 协议可以让应用层协议透明地加以应用。运行时,支持SSL 协议的服务器可以同一个支持SSL 协议的客户机彼此认证自己,还允许这两个机器之间建立安全的加密连接,同时保证信息在传输过程中的完整性。SSL 协议可以分为4 个子协议: SSL 握手协议、 SSL 更改密码规程协议、SSL 报警协议和 SSL 记录协议,其中最重要的两个协议
2、是握手协议和记录协议。SSL 记录协议定义了数据传送的格式, 它位于一些可靠的传输层协议之上(如 TCP) ,用于各种更高层协议的封装。SSL 握手协议位于SSL 记录协议之上,并被SSL 记录协议所封装。它描述建立安全连接的过程,在客户和服务器传送应用层数据之前,该协议允许服务器与客户机之间协商加密算法和会话密钥,完成通信双方的身份验证等功能。应用层协议( HTTP 、Telnet 、FTP、IMAP等)SSL握手协议SSL更改密码规程协议SSL报警协议SSL记录协议TCP协议IP 协议图 5-1 SSL协议的分层结构5.1.2 SSL 记录协议SSL 记录协议( Record Protoc
3、ol )定义了传输的格式,包括记录头和记录数据格式的规定。发送方记录层的工作过程如图5-2 所示:图 5-2 记录层的工作过程1.记录层从上层接收到任意大小的应用层数据块,把数据快分成不超过214字节的分片。2.记录层用当前的会话状态中给出的压缩算法静分片压缩成一个压缩快,压缩操作是可选的。3.每个会话都有相应“加密规格”指定了对称加密算法和MAC 算法。记录层用指定的分片添加MAC 压缩加密添加 SSL 记录头计算 MAC 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共
4、 11 页 - - - - - - - - - MAC 算法对压缩块计算MAC ,用指定的对称加密算法加密压缩块和MAC ,形成密文块。4.对密文块添加SSL 记录头,然后送到传输层,传输层受到这个SSL 记录层数据单元后,记上 TCP 报头,得到TCP 数据包。图 5-3 SSL 记录协议中数据项的格式5.1.3 SSL 握手协议图 5-4 SSL 建立新会话时的握手过程1)建立新会话时的握手过程握手协议用于数据传输之前。它可以进行服务器与客户之间的身份鉴别,同时通过服务器和客户协商, 决定采用的协议版本、加密算法,并确定加密数据所需的对称密钥,随后采用公钥加密技术产生共享机密信息(例如对称
5、密钥)。每次连接,握手协议都要建立一个会话。会话中包含了一套可在多次会话中使用的加密安全参数,从而减轻了每次建立会话的负担。然而,必须指出的是, SSL 中的每次连接时, 在握手协议中产生的对称密钥都是独特的,这种每次更换密钥的方法显然在更大程度上确保了系统的不易攻破性。根据是否验证对方的证书,SSL 的握手过程可以分为以下三种验证模式:客户和服务器都被验证;只验证客户机,不验证服务器,这是Internet 上使用最广泛的形式;客户和服务器都不验证,也称为完全匿名模式。SSL 握手协议建立一个新的会话的过程如图5-4 所示,具体如下:阶段 1:确定一些相关参数,包括协议版本、会话ID 、加密规
6、格、压缩算法和初始随机数(1)客户端发送client_hello 消息给服务器, 向服务器传送客户端支持的SSL 协议的版MAC 数据实际数据附加数据客户机服务器server_hello certificate server_key_exchange* certificate_request* hello_done certificate_verify client_key_exchange Certificate* change_cipher_spfinished certificate_verify* finished change_cipher_spclient_hello no_cer
7、tificate* Step1:确定一些相关参数,包括协议版本、会话ID、加密规格、压缩算法和初始随机数Step2:服务器端发送自身证书 (或临时公钥) 及证书请求,最后发送hello阶段结束信号。Step3:客户端验证服务器端证书、发送自身证书、交换对称密钥。Step4:双方确定加密规格,结束握手协议。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 11 页 - - - - - - - - - 本号、加密算法的种类、MAC 算法的种类、会话标识、密码属性(如hash块的
8、大小),以及其他服务器和客户端之间通信所需要的各种信息。(2)服务器以server_hello 向客户应答,服务器端传选定的SSL 协议的版本号、加密算法的种类、 MAC 算法的种类、密码属性及其他相关信息。阶段 2:服务器端发送自身证书(或临时公钥)及证书请求,最后发送hello 阶段结束信号。(3)如果需要验证服务器,服务器将发送certificate 消息。服务器首先建立一个随机数,然后对这个随机数进行数字签名,将这个含有签名的随机数和服务器的证书,放在 certificate消 息 中 发 送 给 客 户 端 。 若 不 需 要 验 证 服 务 器 证 书 , 服 务 器 发 送 包
9、含 其 临 时 公 钥 的server_key_exchange 消息。(4)若服务器需要验证客户,则发送certificate_request 消息(5)服务器发送hello_done 消息,表示双方握手过程中的hello 阶段结束。阶段 3:客户端验证服务器端证书、发送自身证书、交换对称密钥。(6)客户利用服务器传过来的信息验证服务器的合法性,发送certificate_verify消息,确定验证通过。服务器的合法性包括:证书是否过期,发行服务器证书的CA 是否可靠,发行者证书的公钥能否正确解开服务器证书的“发行者的数字签名”,服务器证书上的域名是否和服务器的实际域名相匹配。如果合法性验证
10、没有通过,通信将断开; 如果合法性验证通过,则将继续进行下一步。(7)客户端先随机产生一个用于后面通信的预主密码(pre-master-key) ,然后用服务器的公钥(从服务器的证书中获得)对其加密, 再将加密后的预主密码通过client_key_exchange消息传给服务器。(8)如果服务器要求客户的身份认证(在握手过程中为可选),客户端会首先建立一个随机数, 然后对这个随机数进行数字签名,将这个含有签名的随机数和客户自己的证书放在certificate 消息中,发送给服务器端。如果客户端没有证书,则会回应no_certificate 告警。阶段 4:双方确定加密规格,结束握手协议。(9)
11、客户端向服务器端发出chenge_cipher_spec 信息,指明后面的数据通信将“预主密码”为对称密钥,同时向服务器发送finished 消息,表示完成了与服务器的握手。(10)服务器检验客户证书和签名随机数的合法性,发送certificate_verify消息。具体的合法性验证包括:客户的证书使用日期是否有效,为客户提供证书的CA 是否可靠, 发行CA 的公钥能否正确解开客户证书的发行CA 的数字签名,检查客户的证书是否在证书撤销列表( CRL)中。检验如果没有通过,则通信立刻中断;如果验证通过,则服务器将用自己的私钥解开加密的 “预主密码” , 然后执行一系列步骤来产生通信使用的主密码
12、(master-key)(客户端也将通过同样的方法产生相同的主密码)。(11)服务器向客户端发出change_cipher_spec信息,指明后面的数据通信将使用预主密码为对称密钥,同时发送finished 消息,通知客户端服务器端的握手过程结束。(12)SSL 的握手部分结束,SSL 安全通道的数据通信开始,客户和服务器开始使用相同的对称密钥进行数据通信,同时进行通信完整性的检验。2)恢复一个已存在会话时的握手过程由上可以看出, SSL 协议的握手过程是非常好使的,为了减少握手过程的交互次数,以及对网络带宽的占用,可将双方经过完整握手过程建立起来的会话状态记录下来。在以后连接时, 采用会话重
13、用技术恢复会话过程,免去会话参数的协商。SSL 握手协议恢复一个已存在的会话的过程如图5-5 所示。客户端发送client_hello 消息给服务器,其中的session id 是要恢复的会话的标识,服务器在会话缓存中检查是否有这个会话标识:若有,服务器将在相应的会话状态下建立一个新名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 11 页 - - - - - - - - - 的连接,服务器发送含有session id 的 server_hello;若没有,服务器会生成一个
14、新的session id,建立一个新的会话过程。当通过恢复一个会话建立一个连接时,这个新的连接将继承这个会话状态下的压缩算法、加密规格和预主密码。但该连接会产生新的随机数和通信密码。图 5-5 SSL 恢复一个已存在会话时的握手过程5.1.4 SSL 协议的缺陷根据以上内容可知,SSL 协议所采用的加密算法和认证算法使它具有一定的安全性,能够在一定程度上抵抗某些攻击。除此之外 SSL 协议具备很强的灵活性,在浏览器中大都建有 SSL 功能。但是SSL 协议也有很多缺陷,具体如下:(1)密钥管理问题设计一个安全秘密的密钥交换协议是很复杂的,因此, SSL 握手协议中客户机和服务器在互相发送自己能
15、够支持的加密算法时,是以明文传送的,存在被攻击修改的可能。(2)加密强度问题服务器证书分为高端和低端两种,高端证书加密强度比低端证书高。SSL 通信中具体达到的加密强度与客户操作系统、浏览器版本、 网络服务器的所采用的证书等因素相关。如许多客户的系统不支持128 位强度的加密链接,即便服务器证书可以支持128 位,客户端也自动降低加密强度,除非他采用了支持SCG 技术的服务器证书(强制型),方可实现 128 位加密强度。因此,客户机的性能将会影响到SSL 的安全性。(3)数字签名问题SSL 协议对握手之后的通信内容没有数字签名功能,即没有抗否认服务。若要增加数字签名功能,则需要在协议中打“补丁
16、”。这样做,在用于加密密钥的同时又用于数字签名,这在安全上存在漏洞。后来PKI 体系完善了这种措施,即双密钥机制,将加密密钥和数字签名密钥二者分开,成为双证书机制。这是PKI 完整的安全服务体系。(4)必须建立在可靠连接基础上SSL 协议的底层协议仅限于TCP 协议。由于 SSL 要求有 TCP 通道,所以对于使用UDP协议的 DNS 类型的应用场合是不适合的。(5)多方通信表现欠佳由于 SSL 的连接本质上是一对一的,所以在通信方只有两个的情况下它会工作的很好。在多对多的环境中,它的表现欠佳。5.2.2 双重签名双重签名是SET 协议中的一个重要技术。生成双重签名的流程如图5-7 所示。假设
17、持卡人为 C,商家为 M ,银行支付网关为B,则双重签名的生成过程如下:客户机服务器change_cipher_spfinished finished change_cipher_spserver_hello client_hello Step2:更改加密规格,结束握手协议Step1:从会话缓存中恢复一个已经存在的对话名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 11 页 - - - - - - - - - 图 5-7 双重签名生成过程(1) 产生发订购信息OI (Or
18、der Information) 和支付指令PI (Payment Information) 。(2) 产生 OI、 PI 的摘要 H(OI) ,H(PI) 。(3) 连接 H(OI) 和 H(PI) 得到 OP ,(4) 生成 OP的摘要 H(OP),(5) 用 C的 RSA私钥 Kcp签名 H(OP),得到 signH(OP),称为双重签名。通过一系列交互和加解密过程,M将获得的数据包括OI、H(P1) 和 signH(OP),B将获得的数据包括PI 、H(OI) 和 signH(OP) 。下面以 M为例,介绍验证双重签名的过程。C验证双重签名的过程与此相似,不再赘述。M验证双重签名的过程
19、如图5-8 所示,具体如下:图 5-8 双重签名验证过程(1) 用收到的OI,生成 H (OI) (2) 将 H (OI)与接收到的摘要H (PI) 连接生成OP (3) 得到 OP的摘要 H (OP) (4) 用 C公钥 Kcu解开 SignH(OP) ,得到 H(OP) (5) 比较 H (OP) 与 H(OP)是否相同。如果相同,则表示数据完整且未被篡改。在交易中持卡人发往银行的支付指令是通过商家转发的,双重签名避免了交易的过程中商家窃取持卡人的信用卡信息,也避免了行跟踪持卡人的行为,侵犯消费者隐私;同时还不影响商家和银行对持卡人所发信息的合理的验证,以及银行和商家之间的沟通,保证当商家
20、同意持卡人的购买请求后再让银行给商家付费。5.2.3 SET交易流程SET协议由一系列请求/ 响应( Req/Res) 信息对组成。 SET 协议信息结构共有6 大部分:认证过程、 交易初始化过程、购买指令执行过程、授权检验过程、 扣款请求执行过程及持卡人查询过程。SET 信息结构中除了认证过程以外的其他过程构成了一个完成的购买交易流程,如图5-9 所示。下面将介绍持卡人、商家和支付网关协同完成交易的具体步骤。OI H (OI) OPH(OP) Hash RSA Kcu H(PI) Sig ( H(OP) ) H(OP) Hash M 接收到的数据比较OI PI H(OI) H(PI) OP
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年电子商务安全协议及支付安全 2022 电子商务 安全 协议 支付
限制150内