1、2023年1月17日星期二网络安全协议网络安全协议因特网与因特网与TCP/IP安全安全-1TCP/IP协议协议栈栈 TCP/IP是一组通信协议的缩写是一组通信协议的缩写 ISO/OSI模型及其与模型及其与TCP/IP的关系的关系因特网与因特网与TCP/IP安全安全-IP协议协议 IP数据包中含有源地址和目的地址数据包中含有源地址和目的地址 不可靠协议,没有做任何事情来确认数据包不可靠协议,没有做任何事情来确认数据包是否按顺序或是未被破坏是否按顺序或是未被破坏 而高层在接受服务时通常假设源地址是有效的而高层在接受服务时通常假设源地址是有效的 IP地址成为认证的基础地址成为认证的基础 IP协议存在
2、的安全问题不少协议存在的安全问题不少 攻击者通过攻击者通过伪造伪造一个一个可信任地址可信任地址的数据包以使的数据包以使一台机器认证另一台机器的复杂技术一台机器认证另一台机器的复杂技术 攻击是利用应用程序之间攻击是利用应用程序之间基于基于IP地址的认证地址的认证机机制,攻击者通过制,攻击者通过IP地址欺骗获得远程系统的非地址欺骗获得远程系统的非法授权访问。法授权访问。过程描述:过程描述:1、X-B:SYN(序列号为序列号为M),IP=A 2、B-A:SYN(序列号为序列号为N),ACK(应答序应答序号号M+1)此时此时A没有同没有同B发起连接,当发起连接,当A收到收到B的包后,会的包后,会发送发
3、送RST置位的包给置位的包给B,从而断开连接从而断开连接 此时攻击者事先让此时攻击者事先让A无法对来自无法对来自B的任何数据包进的任何数据包进行应答。行应答。3、X-B:ACK(应答序号应答序号N+1)IP=A 攻击者猜测攻击者猜测B发送给发送给A的序列号。若的序列号。若猜测猜测成功则,成功则,X将获得主机将获得主机B赋予赋予A的权利。的权利。辅助技术辅助技术1:如何阻止:如何阻止A响应响应B的包的包 SYN 淹淹没没 辅助技术辅助技术2:序列号预测序列号预测 攻击者事先要进行连接试验:攻击者事先要进行连接试验:(1)同目标主机进行连接同目标主机进行连接(2)目标主机应答目标主机应答(3)记录
4、应答包所含的序列号,继续步骤记录应答包所含的序列号,继续步骤1测试测试 分析序列号产生的模式分析序列号产生的模式 上述攻击过程中,攻击者必须依照一定的顺上述攻击过程中,攻击者必须依照一定的顺序来完成网络入侵,这往往是攻击的一种先序来完成网络入侵,这往往是攻击的一种先兆。可安装一个网络嗅探器。兆。可安装一个网络嗅探器。(1)最初,会检测到大量的最初,会检测到大量的TCP SYN从某个主从某个主机发往机发往A的登录端口。的登录端口。(2)大量的大量的TCP SYN包将从主机包将从主机X经过网络发经过网络发往主机往主机B,相应的有相应的有SYN+ACK包从主机包从主机B发发往往X,然后主机然后主机X
5、用用RST作应答作应答 配置路由器和网关,使他们拒绝网络外部与配置路由器和网关,使他们拒绝网络外部与本网内具有相同本网内具有相同IP地址的连接请求地址的连接请求 当包的源当包的源IP地址不在本地子网内时,路由器地址不在本地子网内时,路由器和网关不应该把本网主机的包发出去,以阻和网关不应该把本网主机的包发出去,以阻止内部用户去破坏他人网络止内部用户去破坏他人网络因特网与因特网与TCP/IP安全安全-TCP协议协议 初始化连接初始化连接:三次握手,确保双方做好传输准备,:三次握手,确保双方做好传输准备,统一序列号。统一序列号。SYN,SEQ=x主机 BSYN,ACK,SEQ=y,ACK=x 1AC
6、K,SEQ=x+1,ACK=y 1确认确认主机 A连接请求 TCP会话劫持会话劫持 所谓所谓会话会话,就是两台主机之间的一次通讯。,就是两台主机之间的一次通讯。例如例如Telnet到某台主机,这就是一次到某台主机,这就是一次Telnet会话;会话;浏览某个网站,这就是一次浏览某个网站,这就是一次HTTP会话。会话。,就是在一次正常的就是在一次正常的会话过程当中,会话过程当中,攻击者作为第三方参与到其中攻击者作为第三方参与到其中,他可以在正常数据包中插入恶意数据,也可以在他可以在正常数据包中插入恶意数据,也可以在双方的会话当中进行监听,甚至可以是代替某一双方的会话当中进行监听,甚至可以是代替某一
7、方主机接管会话。方主机接管会话。原因:原因:TCP假定只要接受到假定只要接受到的数据的数据包含有正确的包含有正确的序列号就认为数据是序列号就认为数据是可以接受的可以接受的。一旦连接建立,服务一旦连接建立,服务器无法确定进入的数器无法确定进入的数据包是否来自真实的据包是否来自真实的机器。机器。会话劫持防范会话劫持防范 防范会话劫持是一个比较大的工程。防范会话劫持是一个比较大的工程。最根本的解决办法是采用最根本的解决办法是采用加密通讯加密通讯,使用,使用SSH代替代替Telnet、使用、使用SSL加强加强HTTP,或者,或者干脆使用干脆使用IPSec/VPN。其次,其次,监视网络流量监视网络流量,
8、如发现网络中出现大,如发现网络中出现大量的量的ACK包,则有可能已被进行了会话劫持包,则有可能已被进行了会话劫持攻击。攻击。完善认证措施完善认证措施,不仅仅在建立会话时进行认,不仅仅在建立会话时进行认证证 SSL协议协议1 概况概况SSL协议协议(Security Socket Layer)是是Netscape公司于公司于1994年提出的基于年提出的基于web应用的安全协议。应用的安全协议。主要介绍主要介绍SSLv3.SSL主要采用主要采用公开密钥体制公开密钥体制和和x.509数字证书技数字证书技术术。SSL协议协议1 概况概况 协议的位置:协议的位置:SSL介于介于TCP和应用层协议和应用层
9、协议之间。之间。SSL可以用于任何面向连接的安全通信,但可以用于任何面向连接的安全通信,但通常用于安全通常用于安全web应用的应用的HTTP协议。协议。SMTPIPSSLTCPHTTPFTPSSL协议协议1 概况概况SSL提供一个安全的提供一个安全的“握手握手”来初始化一个来初始化一个TCPIP连接连接建立建立TCPTCP“连接连接”SSLSSL握手,建立握手,建立SSLSSL会话会话完成客户端和服务器之间关于完成客户端和服务器之间关于安全等级安全等级、密码算密码算法法、通信密钥通信密钥的协商,以及执行对连接端的协商,以及执行对连接端身份的身份的认证认证工作。工作。SSL连接上所传送的应用层协
10、议数据都会被加连接上所传送的应用层协议数据都会被加密,从而保证通信的机密性。密,从而保证通信的机密性。SSL协议协议1 概况概况提供的安全保护提供的安全保护(1)SSL 服务器鉴别服务器鉴别 (2)允许用户证实服务器的身份。具有允许用户证实服务器的身份。具有 SS L功能的功能的浏览器维持一个表,上面有一些可信赖的浏览器维持一个表,上面有一些可信赖的认证中认证中心心 CA(Certificate Authority)和它们的公开密钥。和它们的公开密钥。(2)加密的加密的 SSL 会话会话 客户和服务器交互的所有数据客户和服务器交互的所有数据都在发送方加密,在接收方解密。都在发送方加密,在接收方
11、解密。(3)SSL 客户鉴别客户鉴别(可选可选)允许服务器证实客户的身允许服务器证实客户的身份。份。(4)检测客户和服务器间的数据完整性检测客户和服务器间的数据完整性(5)客户与服务器自动协商生成密钥,无需用户参与客户与服务器自动协商生成密钥,无需用户参与SSL协议协议2 协议结构协议结构SSL握手协议握手协议SSL记录协议记录协议SSL告警协议告警协议SSL修改密文协修改密文协议议SSL协议协议2 协议结构协议结构(1)(1)建立建立TCPTCP“连接连接”;(2)(2)SSLSSL握手,建立握手,建立SSLSSL“会话会话”(Session)Session);(3)(3)通过通过“会话会话
12、”传送加密数据包;传送加密数据包;(4)(4)释放连接,释放连接,“会话会话”过期。过期。TCPTCP连接和连接和SSLSSL会话的关系会话的关系安全连接的特性安全连接的特性连接和会话的关系连接和会话的关系连接是传输层中的概念连接是传输层中的概念 SSL会话联系客户端和服务器,由会话联系客户端和服务器,由SSL握手协议建握手协议建立,制定一系列加密的安全参数。这些安全参数立,制定一系列加密的安全参数。这些安全参数可被连接多次使用。可被连接多次使用。连接是短暂的,对应一个会话,而一个会话可被连接是短暂的,对应一个会话,而一个会话可被多次连接使用。多次连接使用。安全连接的特性安全连接的特性 连接是
13、私有的。握手协议商量一个会话密钥,然连接是私有的。握手协议商量一个会话密钥,然后用对称的加密算法对数据加密后用对称的加密算法对数据加密 连接的标识符用非对称算法加密连接的标识符用非对称算法加密 连接是可靠的。连接是可靠的。1、基于的安全技术、基于的安全技术 2、协议的位置、协议的位置 3、通信步骤、通信步骤 4、提供的安全保护、提供的安全保护 5、协议栈、协议栈 6、连接和会话、连接和会话SSL协议协议3记录层协议记录层协议 根据当前根据当前会话状态会话状态给出参数给出参数 压缩算法压缩算法 对称加密算法对称加密算法 MAC算法算法 密钥长度密钥长度 Hash长度长度 IV长度长度 连接状态连
14、接状态给出的参数给出的参数 Client和和Server的随机数的随机数 加密密钥加密密钥 MAC secrets IVs 消息序列号消息序列号 对当前的连接中要传送的对当前的连接中要传送的高层数据高层数据实施压缩实施压缩/解压缩、加解压缩、加/解解密、计算密、计算/校验校验MAC等操作。等操作。SSL握手协议握手协议SSL记录协议记录协议SSL告警协议告警协议SSL修改密文协修改密文协议议SSL协议协议3记录层协议记录层协议 SSL握手协议握手协议SSL记录协议记录协议TCPIPSSL告警协议告警协议SSL修改修改密文协议密文协议应用数据协议应用数据协议HTTP、FTP、Telnet等等SS
15、L协议协议3记录层协议记录层协议(接收过程反之接收过程反之)应用数据应用数据 分片分片 压缩压缩 加加MAC 加密加密 附另附另SSLSSL记录记录报头报头 记录层协议小结记录层协议小结 功能功能 提供的服务提供的服务 发送过程发送过程SSL协议协议4 修改密文规约协议修改密文规约协议 目的是为了目的是为了表示密码策略的变化表示密码策略的变化。通知对方其后的记录将用刚刚协商的密码规范及通知对方其后的记录将用刚刚协商的密码规范及相关的密钥来保护。相关的密钥来保护。所有意外的更改密码规范消息都将产生一个所有意外的更改密码规范消息都将产生一个“意外消息意外消息”(unexpected message
16、)警告警告 SSL协议协议5 告警协议告警协议 包括若干个告警消息包括若干个告警消息当握手过程或数据加密等操作出错误或发生异常当握手过程或数据加密等操作出错误或发生异常情况时,向对方发出警告或中止当前连接。情况时,向对方发出警告或中止当前连接。第一个字节的值为第一个字节的值为warning(警告警告)或或fatal(致命致命),表示消息的严重性等级。第二个字节是具体的告表示消息的严重性等级。第二个字节是具体的告警消息。警消息。SSL握手协议握手协议SSL记录协议记录协议TCPIPSSL告警协议告警协议SSL修改修改密文协议密文协议应用数据协议应用数据协议HTTP、FTP、Telnet等等SSL
17、协议协议5 握手协议握手协议验证实体身份验证实体身份协商密钥交换算法、压缩算法和加密算法、协商密钥交换算法、压缩算法和加密算法、完成密钥交换完成密钥交换生成密钥生成密钥客户端和服务器要建立一个连接,就必须进行客户端和服务器要建立一个连接,就必须进行握手过程。每次握手都存在一个会话和一个连握手过程。每次握手都存在一个会话和一个连接,连接一定是新的,但会话可能是新的,也接,连接一定是新的,但会话可能是新的,也可能是已存在的会话。可能是已存在的会话。SSL协议协议5 握手协议握手协议 握手协议由一系列在客户端和服务器端之间握手协议由一系列在客户端和服务器端之间交换的消息组成交换的消息组成 Hello
18、 Request(问候请求问候请求)Client Hello(客户端问候客户端问候)消息消息 Server Hello(服务器问候服务器问候)消息消息 Server Certificate(服务器证明服务器证明)消息消息 Server Key Exchange(服务器密钥交换服务器密钥交换)消息消息 Certificate Request(证明请求证明请求)消息消息 Server Hello Done(服务器问候结束服务器问候结束)消息消息 Client Certificate(客户端证明客户端证明)消息消息 Client Key Exchange(客户端密钥交换客户端密钥交换)消消息息 Ce
19、rtificate Verify(证明检查证明检查)消息消息 Finished(结束结束)消息消息 SSL协议协议5 握手协议握手协议 建立一个新的握手过程建立一个新的握手过程Client hello包括:包括:客户端支持的客户端支持的SSL版本号版本号产生的随机数产生的随机数会话会话ID密码算法列表密码算法列表压缩方法列表压缩方法列表ClientserverClient helloServer hello(server Certificate)(Server key exchange)(certificate request)Server hello doneClientserverServ
20、er hello:从客户列表中选出的从客户列表中选出的SSL版本号版本号产生的随机数产生的随机数会话会话ID从客户列表中选出密码算法从客户列表中选出密码算法选定的压缩算法选定的压缩算法Server Certificate:由由CA签发的签发的X.509证书。证书。包括服务器的信息和公钥包括服务器的信息和公钥客户可以使用这个公钥向服务器发客户可以使用这个公钥向服务器发送加密信息送加密信息Server key exchange:补充,为客户端进一步补充,为客户端进一步提供算法变量提供算法变量Certificate request:一般客户端是匿名的一般客户端是匿名的Server hello don
21、e完成通信,等待客户端应答完成通信,等待客户端应答Client helloServer hello(Server Certificate)(Server key exchange)(certificate request)Server hello done(client Certificate)Client key exchange(certificate verify)Change cipher specfinishedClient Certificate:客户的客户的X.509证书。证书。Client key exchange:随机数,用于会话密钥的建立随机数,用于会话密钥的建立Certi
22、ficate verify:若用户提供了证书,将用私钥对若用户提供了证书,将用私钥对信息签名信息签名Change cipher spec表示将使用选定的密码算法和参表示将使用选定的密码算法和参数处理将来的通信。但是客户端数处理将来的通信。但是客户端不需要将密钥告诉服务器,因为不需要将密钥告诉服务器,因为服务器可使用前面的随机数和算服务器可使用前面的随机数和算法计算出同样的密钥。法计算出同样的密钥。Finished:使用会话密钥加密使用会话密钥加密Client helloServer hello(Server Certificate)(Server key exchange)(certifica
23、te request)Server hello done(Client Certificate)Client key exchange(certificate verify)Change cipher specfinishedChange cipher specfinishedChange cipher spec:向客户端显示它也将使向客户端显示它也将使用与客户端相同的参数用与客户端相同的参数来加密将来所有的通信来加密将来所有的通信Finished:使用会话密钥加密使用会话密钥加密 恢复一个已存会话的握手过程恢复一个已存会话的握手过程Client hello:会话会话ID是要恢复的会话是要恢复
24、的会话的的session id 服务器发送一个含有相服务器发送一个含有相同同session id的的Server Hello消息消息 idClient helloServer helloChange cipher specServer_hello_doneChange cipher specfinishedApplication dataSSL协议协议5 握手协议握手协议要注意的问题:要注意的问题:由于公钥加密算法的速度非常慢。为了提高性能,由于公钥加密算法的速度非常慢。为了提高性能,双方可以缓存并重用在握手协议过程中交换的信双方可以缓存并重用在握手协议过程中交换的信息。该过程称为息。该过程称
25、为会话会话IDID重用重用。如果在握手协议的过程中可以确定协议的客户端如果在握手协议的过程中可以确定协议的客户端和服务器所共享的一个会话和服务器所共享的一个会话IDID的话,就可以略过的话,就可以略过公钥和认证操作,同时可以在密钥生成的过程中公钥和认证操作,同时可以在密钥生成的过程中重用先前生成的共享秘密。重用先前生成的共享秘密。SSL协议协议6 密码计算密码计算 主密码:从预主密码衍生出来的主密码:从预主密码衍生出来的 预主密码:在预主密码:在RSA密码技术预主密码是由客密码技术预主密码是由客户端生成,然后通过户端生成,然后通过Client Key Exchange消消息发送给服务器的。息发
26、送给服务器的。MAC写密钥和写密钥:对于一个连接,写密钥和写密钥:对于一个连接,从主从主密码中生成的。用于每次连接的加密。密码中生成的。用于每次连接的加密。假定假定A有一个使用有一个使用SSL的安全网页。的安全网页。B上网时用鼠标点击到这个安全网页的链接上网时用鼠标点击到这个安全网页的链接(https).接着,服务器和浏览器进行握手协议。接着,服务器和浏览器进行握手协议。SSL协议小结协议小结 1、基于的安全技术、基于的安全技术 2、协议的位置、协议的位置 3、通信步骤、通信步骤 4、提供的安全保护、提供的安全保护 5、协议栈、协议栈 6、连接和会话、连接和会话 7、握手协议、握手协议SSL握
27、手协议握手协议SSL记录协议记录协议TCPIPSSL告警协议告警协议SSL修改修改密文协议密文协议应用数据协议应用数据协议HTTP、FTP、Telnet等等 1、流程很简单、流程很简单 2、架构简单,认证简单、处理速度快、费用、架构简单,认证简单、处理速度快、费用低低 3、使用方便、使用方便 1、付款人的信用卡资料先传到商家,再转发付款人的信用卡资料先传到商家,再转发给银行,付款人无法确认商家是否能保密自给银行,付款人无法确认商家是否能保密自己的相关信息己的相关信息 2、只能提供交易中客户与服务器间的双方认、只能提供交易中客户与服务器间的双方认证,在涉及多方的电子交易中,证,在涉及多方的电子交
28、易中,SSL协议并协议并不能协调各方间的安全传输和信任关系。不能协调各方间的安全传输和信任关系。SSL协议运行的基础是商家对消费者信息保协议运行的基础是商家对消费者信息保密的承诺,这就有利于商家而不利于消费者。密的承诺,这就有利于商家而不利于消费者。在电子商务初级阶段,由于运作电子商务的在电子商务初级阶段,由于运作电子商务的企业大多是信誉较高的大公司,因此这问题企业大多是信誉较高的大公司,因此这问题还没有充分暴露出来。但随着电子商务的发还没有充分暴露出来。但随着电子商务的发展,各中小型公司也参与进来,这样在电子展,各中小型公司也参与进来,这样在电子支付过程中的单一认证问题就越来越突出。支付过程
29、中的单一认证问题就越来越突出。在这种情况下,在这种情况下,Visa和和 MasterCard两大信用两大信用卡公组织制定了卡公组织制定了SET协议,为网上信用卡支协议,为网上信用卡支付提供了全球性的标准。付提供了全球性的标准。Secure Electronic Transactions Protect credit card transaction on the Internet.Companies involved:MasterCard,Visa,IBM,Microsoft,Netscape,RSA,Terisa and Verisign Set of security protocols
30、and formats.Key Features of SET Confidentiality of information Integrity of data Cardholder account authentication Merchant authentication Provides tust by the use of X.509v3 digital certificates.SET Participants信用卡的信用卡的数字证书数字证书来自银行来自银行的数字证的数字证书书定购货物定购货物商家有效性的确认商家有效性的确认发送定购信息和支付信息发送定购信息和支付信息订购订购者的者的
31、消息消息传送传送到收到收单行单行确认用户信用卡确认用户信用卡认可认可认可认可传送货物和收据传送货物和收据索款索款Sequence of events for transactions1.持卡人打开一个银行账号。持卡人打开一个银行账号。2.持卡人收到一个作为在线购买或其他交易的信用卡的电子证书,它包持卡人收到一个作为在线购买或其他交易的信用卡的电子证书,它包括一个公钥和一个有效期限。括一个公钥和一个有效期限。3.商家也收到来自银行的证书,包括商家的公钥和银行的公钥。商家也收到来自银行的证书,包括商家的公钥和银行的公钥。4.持卡人定购货物。持卡人定购货物。5.持卡人的浏览器得到来自商家证书的关于商
32、家有效性的确认。持卡人的浏览器得到来自商家证书的关于商家有效性的确认。6.浏览器发送定购信息,信息用商家的公钥加密,支付信息用银行的公浏览器发送定购信息,信息用商家的公钥加密,支付信息用银行的公钥加密以保证支付只为特定的订购者使用。钥加密以保证支付只为特定的订购者使用。7.商家通过检查持卡人证书中的数字签名来验证持卡人。商家通过检查持卡人证书中的数字签名来验证持卡人。8.商家把订购者的消息传送到收单行,收单行可以解密信用卡号,并通商家把订购者的消息传送到收单行,收单行可以解密信用卡号,并通过认证验证签名;过认证验证签名;9.收单行向发卡行查问,确认用户信用卡是否属实;收单行向发卡行查问,确认用
33、户信用卡是否属实;10.发卡行认可并签证该笔交易;发卡行认可并签证该笔交易;11.收单行认可商家并签证此交易;收单行认可商家并签证此交易;12.商家向持卡人传送货物和收据;商家向持卡人传送货物和收据;13.交易成功,商家向收单行索款;交易成功,商家向收单行索款;14.14.收单行按合同将货款划给商家。收单行按合同将货款划给商家。Dual Signature它允许将它允许将两种数据两种数据连接连接在一起并交给两个不同在一起并交给两个不同的实体处理的实体处理。消费者想要将消费者想要将订购信息订购信息(OI)OI)发送给发送给商家商家将将支付信息支付信息(PI)PI)发送给发送给银行银行。商家不必知
34、道消费者的信用卡号码商家不必知道消费者的信用卡号码银行也不必知道消费者订单的细节银行也不必知道消费者订单的细节消费者可以证明这个支付是用于这次订购而不是消费者可以证明这个支付是用于这次订购而不是用于其他某种货物或服务。用于其他某种货物或服务。Dual Signature 假设消费者将两个报文发送给商家假设消费者将两个报文发送给商家签名的签名的OIOI和签名的和签名的PIPI 接着商家将接着商家将PIPI继续传递给银行。继续传递给银行。如果商家可以如果商家可以截获截获来自这个消费者的来自这个消费者的另一个另一个OIOI,商家可以声明后一个商家可以声明后一个OIOI是和那个是和那个PIPI一起一起
35、的而不是原来的的而不是原来的OIOI。连接可以防止这个问题连接可以防止这个问题。OI PI OI PI 第一次第一次 电视机电视机 卡号¥卡号¥5000 第二次第二次 电话电话 卡号¥卡号¥50Dual SignatureH(OI)|)(PIHHEDScKR1 1 商家收到商家收到PIMDPIMD、OIOI、DS,DS,知道知道KucKuc持卡人的持卡人的公钥公钥计算计算H(PIMD|H(OI)H(PIMD|H(OI)和和D DKUcKUcDSDS,验证该签名。验证该签名。2 2银行收到银行收到OIMDOIMD、PIPI、DS,DS,知道知道KucKuc持卡人的持卡人的公钥公钥计算计算H(OI
36、MD|H(PI)H(OIMD|H(PI)和和D DKUcKUcDSDS,验证该签名。验证该签名。3 3 消费者将消费者将OIOI和和PIPI连接起来并且能够证明这连接起来并且能够证明这个连接关系。个连接关系。思考:商家是否可用另一个思考:商家是否可用另一个OIOI来代替?来代替?那么它就必须找到另一个散列数据与已经存那么它就必须找到另一个散列数据与已经存在的在的OIMDOIMD相匹配的相匹配的OIOI,这被认为是不可行的。这被认为是不可行的。因此,商家不能将另一个因此,商家不能将另一个OIOI与这个与这个PIPI相连接。相连接。基于基于SET的的CA的分级结构的分级结构 根根CA品牌品牌CA地
37、区地区CA持卡人持卡人CA商家商家CA支付网关支付网关CA持卡人持卡人商家商家支付网关支付网关书书P131P131购买请求购买请求:用户与商家确定所用支付方式的细节;:用户与商家确定所用支付方式的细节;支付授权:商家会与银行核实,随着交易的进展,支付授权:商家会与银行核实,随着交易的进展,他们将得到付款他们将得到付款支付获取:商家向银行出示所有交易的细节,然支付获取:商家向银行出示所有交易的细节,然后银行以适当方式转移货款。后银行以适当方式转移货款。购买请求由持卡人和商家之间交换的购买请求由持卡人和商家之间交换的4 4个消息组成:个消息组成:发起请求发起请求:持卡人软件请求网关证书的一个拷贝;
38、持卡人软件请求网关证书的一个拷贝;表明该交易中将使用何种品牌的支付卡。表明该交易中将使用何种品牌的支付卡。发起响应:发起响应:唯一的唯一的交易标识符交易标识符。商家商家证书证书以及支付网关的证书以及支付网关的证书商家的私钥对该信息进行数字签名后发送给持卡人。商家的私钥对该信息进行数字签名后发送给持卡人。购买请求购买请求:收到发起响应消息之后,持卡人软件验证商家和支付网收到发起响应消息之后,持卡人软件验证商家和支付网关的证书。关的证书。持卡人软件使用持卡人软件使用OIOI和和PIPI来产生一个双向签名。来产生一个双向签名。最后,持卡人软件生成一个购买请求消息。最后,持卡人软件生成一个购买请求消息
39、。持卡人生成了一次性的对称加密密钥持卡人生成了一次性的对称加密密钥s s。SET消息消息PI双向签名双向签名OIMDDES加密加密RSA加密加密KsKUb请求报文请求报文数字信封数字信封SET密文密文PIMDOI持卡人证书持卡人证书双向签名双向签名PIPI支付信息支付信息OIOI订购信息订购信息PIMDPIMDPIPI报文摘要报文摘要OIMDOIMDOIOI报文摘要报文摘要KsKs临时的对称密钥临时的对称密钥KUbKUb银行的公开密钥交换的密钥银行的公开密钥交换的密钥与购买相关的信息。这个信息将被商家转发给支付网关与购买相关的信息。这个信息将被商家转发给支付网关 与订购有关的信息。商家需要这个
40、信息与订购有关的信息。商家需要这个信息 持卡人的证书。持卡人的证书。(4)(4)购买响应购买响应 :通过持卡人的签名来验证持卡人的证书。通过持卡人的签名来验证持卡人的证书。使用消费者的公开签名密钥来验证双向签名。这样可以确使用消费者的公开签名密钥来验证双向签名。这样可以确保订购信息在传输过程中没有被篡改,并且它使用了持卡人的保订购信息在传输过程中没有被篡改,并且它使用了持卡人的私有签名密钥进行了签名。私有签名密钥进行了签名。处理订购信息,并将支付信息转交给支付网关进行认可。处理订购信息,并将支付信息转交给支付网关进行认可。最后,商家生成一个购买响应消息,它表明商家已经收到最后,商家生成一个购买
41、响应消息,它表明商家已经收到持卡人的请求。持卡人的请求。一旦收到了商家的购买响应,持卡人软件就验证商家的证书一旦收到了商家的购买响应,持卡人软件就验证商家的证书以及消息内容的数字签名。在此时刻,持卡人软件基于这些消以及消息内容的数字签名。在此时刻,持卡人软件基于这些消息将采取一些行动,诸发向持卡人显示一个消息,或者用订单息将采取一些行动,诸发向持卡人显示一个消息,或者用订单的状态来更新数据库。的状态来更新数据库。HOIMDRSA解密解密KUC请求报文请求报文SET密文密文数字信封数字信封PIMDOI持卡人证书持卡人证书双向签名双向签名POMDPOMDH|比较比较OI=订购信息订购信息OIMDO
42、I报文摘要报文摘要POMD支付订购报文摘要支付订购报文摘要H散列函数(散列函数(SHA1)KUC顾客的公开签名密钥顾客的公开签名密钥授权请求:商家软件生成并数字签发一个授权请授权请求:商家软件生成并数字签发一个授权请求,其中包括授权的数量、来自求,其中包括授权的数量、来自OIOI的交易标识符以及的交易标识符以及其他的关于交易的信息。然后,使用支付网关的公钥其他的关于交易的信息。然后,使用支付网关的公钥对这一信息生成一个数字信封。授权请求和持卡人的对这一信息生成一个数字信封。授权请求和持卡人的PIPI(它也以数字信封的形式传给支付网关)被传送给它也以数字信封的形式传给支付网关)被传送给支付网关。
43、支付网关。授权响应:当收到授权请求时,支付网关解密并授权响应:当收到授权请求时,支付网关解密并验证消息(也就是证书和验证消息(也就是证书和PIPI)的内容。如果一切都是的内容。如果一切都是合法的,那么支付网关会生成一个授权响应消息;然合法的,那么支付网关会生成一个授权响应消息;然后用商家的公钥对之生成一个数字信封并将它传送加后用商家的公钥对之生成一个数字信封并将它传送加商家。商家。一旦收到了支付网关的授权响应消息,商家就解密一旦收到了支付网关的授权响应消息,商家就解密数字信封并验证里面的数据。如果本购买是授权过的,数字信封并验证里面的数据。如果本购买是授权过的,则商家通过发送货物或者完成在订单
44、内指明的服务来则商家通过发送货物或者完成在订单内指明的服务来完成对持卡人订单的处理。完成对持卡人订单的处理。Payment processing回复请求:商家软件生成回复请求,它包括交易回复请求:商家软件生成回复请求,它包括交易的最终数量、交易标识符以及其他的关于交易的信息。的最终数量、交易标识符以及其他的关于交易的信息。然后使用支付网关的公钥对这一消息生成数字信封并然后使用支付网关的公钥对这一消息生成数字信封并传送给支付网关。传送给支付网关。回复响应:接收到回复请求并验证了它的内容之回复响应:接收到回复请求并验证了它的内容之后,支付网关将生成一个回复响应。回复响应包括与后,支付网关将生成一个
45、回复响应。回复响应包括与该请求交易的支付有关的信息。然后使用商家的公钥该请求交易的支付有关的信息。然后使用商家的公钥对这一响应生成数字信封并将之传送回商家。对这一响应生成数字信封并将之传送回商家。一旦收到了支付网关的回复响应,商家软件就解密一旦收到了支付网关的回复响应,商家软件就解密数字信封,验证签名和消息数据,用于同从收单行那数字信封,验证签名和消息数据,用于同从收单行那里接收的支付相匹配。里接收的支付相匹配。Payment processing 1、在认证要求方面在认证要求方面,早期的早期的SSL并没有提供商家身份认证机制,虽然在并没有提供商家身份认证机制,虽然在SSL3.0中可以通过数字
46、签名和数字证书可实现浏览器和中可以通过数字签名和数字证书可实现浏览器和Web服务器双方的身份验证,但仍服务器双方的身份验证,但仍不能实现多方认证不能实现多方认证;相比之下,相比之下,SET的安全要求较高,所有参与的安全要求较高,所有参与SET交易的交易的成员(持卡人、商家、发卡行、收单行和支付网关)都成员(持卡人、商家、发卡行、收单行和支付网关)都必须申请数字证书进行身份识别。必须申请数字证书进行身份识别。2、在安全性方面,在安全性方面,SET协议规范了协议规范了整个商务活动的流程整个商务活动的流程,从持卡人到商家,从持卡人到商家,到支付网关,到认证中心以及信用卡结算中心之间的信到支付网关,到
47、认证中心以及信用卡结算中心之间的信息流走向和必须采用的加密、认证都制定了严密的标准,息流走向和必须采用的加密、认证都制定了严密的标准,从而最大限度地保证了商务性、服务性、协调性和集成从而最大限度地保证了商务性、服务性、协调性和集成性。性。而而SSL只对持卡人与商店端的只对持卡人与商店端的信息交换进行加密保护,信息交换进行加密保护,可以看作是用于可以看作是用于传输的那部分的技术规范传输的那部分的技术规范。从电子商务。从电子商务特性来看,它并不具备商务性、服务性、协调性和集成特性来看,它并不具备商务性、服务性、协调性和集成性。因此性。因此SET的安全性比的安全性比SSL高。高。3、在网络层协议位置
48、方面在网络层协议位置方面,SSL是基于传输层的通用安全是基于传输层的通用安全协议,而协议,而SET位于应用层,对网络上其他各层也有涉及。位于应用层,对网络上其他各层也有涉及。4、在应用领域方面,、在应用领域方面,SSL主要是和主要是和Web应用一起工作,而应用一起工作,而SET是为信用卡交易提供安全,因此如果电子商务应用只是是为信用卡交易提供安全,因此如果电子商务应用只是通过通过Web或是电子邮件,则可以不要或是电子邮件,则可以不要SET。但如果电子商务。但如果电子商务应用是一个涉及多方交易的过程,则使用应用是一个涉及多方交易的过程,则使用SET更安全、更通更安全、更通用些。用些。总之:总之:
49、SSL协议实现简单,独立于应用层协议,大部分内置于浏览协议实现简单,独立于应用层协议,大部分内置于浏览器和器和Web服务器中,在电子交易中应用便利。但它是一个面服务器中,在电子交易中应用便利。但它是一个面向连接的协议,只能提供交易中客户与服务器间的双方认证,向连接的协议,只能提供交易中客户与服务器间的双方认证,不能实现多方的电子交易中。不能实现多方的电子交易中。SET在保留对客户信用卡认证的前提下增加了对商家身份的在保留对客户信用卡认证的前提下增加了对商家身份的认证,安全性进一步提高。由于两协议所处的网络层次不同,认证,安全性进一步提高。由于两协议所处的网络层次不同,为电子商务提供的服务也不相
50、同,为电子商务提供的服务也不相同,因此在实践中应根据具体因此在实践中应根据具体情况来选择独立使用或两者混合使用。情况来选择独立使用或两者混合使用。1 作用作用 2 组成组成 3 双向签名双向签名 4 购买请求报文及验证购买请求报文及验证IPSec 协议协议 1 概述概述 思考:是否思考:是否SSL协议和协议和SET协议足够?协议足够?思考:若某几个节点采用一种协议思考:若某几个节点采用一种协议A进行通信,进行通信,但是又不想重建物理网络和软件配置,应该但是又不想重建物理网络和软件配置,应该怎么办?怎么办?VPN的主要隧道协议的主要隧道协议 第二层隧道协议第二层隧道协议 PPTP、L2F、L2T
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。