1、2022-11-3西安电子科技大学计算机学院1Chapter 16 Web安全性安全性.2022-11-3西安电子科技大学计算机学院2第一部分第一部分 SSL/TLS协议协议nSSL(Secure Socket Layer)是一种在两个端)是一种在两个端实体(实体(End Entity)之间提供安全通道的协议。)之间提供安全通道的协议。n它具有保护传输数据以及识别通信实体的功能。它具有保护传输数据以及识别通信实体的功能。n安全通道是透明的安全通道是透明的nIETF 制定的制定的TLS(Transport Layer Security)版本是对版本是对Nescape公司的公司的SSL和和Micr
2、osoft公司的公司的PCT(Private Communication Technology)两个协议的综合和兼容。两个协议的综合和兼容。n重点讨论重点讨论SSL协议协议.2022-11-3西安电子科技大学计算机学院3SSL/TLS协议设计目标协议设计目标nSSL V2 设计目标设计目标q为满足为满足WEB安全通信而设计安全通信而设计q提供客户和服务器之间传输数据的保密性提供客户和服务器之间传输数据的保密性q服务器认证(客户端认证可选)服务器认证(客户端认证可选)nSSL V3设计目标设计目标q修正修正SSL V2中存在的多处安全问题中存在的多处安全问题q设计一种安全磋商多种加密算法的机制设
3、计一种安全磋商多种加密算法的机制.2022-11-3西安电子科技大学计算机学院4SSL提供了什么提供了什么nSSL提供了通道级别的安全提供了通道级别的安全:连接的两端知道连接的两端知道所传输的数据是保密的所传输的数据是保密的,而且没有被篡改而且没有被篡改n几乎总是要对服务器进行认证几乎总是要对服务器进行认证n可选的客户端认证可选的客户端认证n针对异常情况的安全通知针对异常情况的安全通知q错误警示错误警示q关闭连接关闭连接n所有这些依赖于某些对系统的假定所有这些依赖于某些对系统的假定q假定已经正确产生了密钥数据并且假定已经正确产生了密钥数据并且q该密钥已被安全地保管该密钥已被安全地保管.2022
4、-11-3西安电子科技大学计算机学院5SSL与与TCP/IPnSSL连接非常类似于连接非常类似于“保密的保密的”的的TCP连接连接n位于位于TCP之上,应用层之下之上,应用层之下n几乎只能在几乎只能在TCP上运行,而不能在上运行,而不能在UDP或或IP上上运行,因而它依赖于可靠的传输协议运行,因而它依赖于可靠的传输协议n微软的微软的STLP和无线应用论坛的和无线应用论坛的WTLS均为意图均为意图在数据报传输层(如在数据报传输层(如UDP)上正确工作的变种。)上正确工作的变种。.2022-11-3西安电子科技大学计算机学院6SSL变种谱系树变种谱系树SSL V1(1994)未发布未发布SSL V
5、2(1994)第一版第一版SSL V3(1995)TLS(19971999)PCT(1995)STLP(1996)WTLS(1998).2022-11-3西安电子科技大学计算机学院7用于用于WEB的的SSLn保护使用保护使用HTTP的的WEB通信通信n新的新的URL https:/n在浏览器中的表现在浏览器中的表现 qNETSCAPE:工具条上会显示一把钥匙:工具条上会显示一把钥匙qIE:右下角显示右下角显示 一把锁一把锁n几乎所有的商业几乎所有的商业WEB服务器和浏览器都实现服务器和浏览器都实现了内置的了内置的SSL协议,通过配置即可使用协议,通过配置即可使用.2022-11-3西安电子科技
6、大学计算机学院8在在SSL上构建一切上构建一切n除了除了HTTP 和和NNTP(SNEWS)外,还可以)外,还可以用于用于SMTP、Telnet、FTP等,也可用于保护等,也可用于保护专有协议。专有协议。n协议端口标准化协议端口标准化n协议实现协议实现qOPENSSL (C语言实现)语言实现)qpureTLS (java 实现实现)qApacheSSL (针对(针对Apache服务器的实现)服务器的实现)qMod_ssl .2022-11-3西安电子科技大学计算机学院9两个主要的协议两个主要的协议nSSL记录协议记录协议q建立在可靠的传输协议建立在可靠的传输协议(如如TCP)之上之上q它提供连
7、接安全性,有两个特点它提供连接安全性,有两个特点n保密性,使用了对称加密算法保密性,使用了对称加密算法n完整性,使用完整性,使用HMAC算法算法q用来封装高层的协议用来封装高层的协议nSSL握手协议握手协议q客户和服务器之间相互鉴别客户和服务器之间相互鉴别q协商加密算法和密钥协商加密算法和密钥q它提供连接安全性,有三个特点它提供连接安全性,有三个特点n身份鉴别,至少对一方实现鉴别,也可以是双向鉴别身份鉴别,至少对一方实现鉴别,也可以是双向鉴别n协商得到的共享密钥是安全的,中间人不能够知道协商得到的共享密钥是安全的,中间人不能够知道n协商过程是可靠的协商过程是可靠的.2022-11-3西安电子科
8、技大学计算机学院10SSL的两个重要概念的两个重要概念nSSL连接(连接(connection)q一个连接是一个提供一种合适类型服务的传输一个连接是一个提供一种合适类型服务的传输(OSI分层的定义)。分层的定义)。qSSL的连接是点对点的关系。的连接是点对点的关系。q连接是暂时的,每一个连接和一个会话关联。连接是暂时的,每一个连接和一个会话关联。nSSL会话(会话(session)q一个一个SSL会话是在客户与服务器之间的一个关联。会话是在客户与服务器之间的一个关联。会话由会话由Handshake Protocol创建。会话定义了创建。会话定义了一组可供多个连接共享的密码安全参数。一组可供多个
9、连接共享的密码安全参数。q会话用以避免为每一个连接提供新的安全参数所会话用以避免为每一个连接提供新的安全参数所需昂贵的协商代价。需昂贵的协商代价。.2022-11-3西安电子科技大学计算机学院11SSL基础针对基础针对RSA服务器认证的服务器认证的SSLnSSL灵活性:灵活性:q单向认证单向认证 和和 双向认证双向认证 认证加密认证加密 和和 认证认证q加密算法:加密算法:RSA DSS DH FORTEZZA n连接分为两个节段:连接分为两个节段:q握手阶段握手阶段 完成对服务器认证并建立加密密钥完成对服务器认证并建立加密密钥q数据传输阶段数据传输阶段 加密数据传输加密数据传输.2022-1
10、1-3西安电子科技大学计算机学院12握手协议握手协议n握手阶段的目的握手阶段的目的q客户和服务器协商保护数据的算法(及其具体参数)客户和服务器协商保护数据的算法(及其具体参数)q确立在协商好的算法上使用的加密密钥确立在协商好的算法上使用的加密密钥q可选择对客户端进行认证可选择对客户端进行认证 client server-所支持的加密算法,随机数所支持的加密算法,随机数 选中的加密算法,随机数,服务器证书选中的加密算法,随机数,服务器证书 加密后的加密后的pre_master_secret 计算相关演化密钥计算相关演化密钥 计算相关演化密钥计算相关演化密钥 握手消息的握手消息的MAC值值 握手消
11、息的握手消息的MAC值值注:注:1.pre_master_secret 可以由可以由KDF(key derivation function)演化)演化出出master_secret,最后再通过最后再通过master_secret 演化出系列加密密钥。演化出系列加密密钥。2.最后两步防止握手本身遭受篡改(如低强度密码算法替换等)最后两步防止握手本身遭受篡改(如低强度密码算法替换等).(1)3.客户端和服务器端随机数的传输,防止重放攻击。客户端和服务器端随机数的传输,防止重放攻击。.2022-11-3西安电子科技大学计算机学院13握手消息握手消息 client server-握手:握手:Clien
12、tHello 握手:握手:ServerHello Certificate ServerHelloDone ClientKeyExchange (ChangeCipherSpec)Finished (ChangeCipherSpec)Finished.2022-11-3西安电子科技大学计算机学院14SSL 记录协议记录协议n实际的数据传输是使用实际的数据传输是使用SSL记录协议实现的记录协议实现的n数据流分割成一系列片段并加以传输,每个片断单独数据流分割成一系列片段并加以传输,每个片断单独保护和传输保护和传输n为实现完整性保护,对片段进行为实现完整性保护,对片段进行MAC保护保护n为实现机密性保
13、护,对片段进行加密保护为实现机密性保护,对片段进行加密保护n传输的是安全记录传输的是安全记录.2022-11-3西安电子科技大学计算机学院15记录头记录头(Head)nContentType;8位,上层协议类型位,上层协议类型nMajor version;Minnor version 16位,主次版本位,主次版本nCompressed Length:16位位 加密后数据的长度,不加密后数据的长度,不超过超过214+2048字节字节(SSL(SSL 几乎不用压缩几乎不用压缩,虽然支持虽然支持)nEncryptedData fragment;密文数据密文数据.2022-11-3西安电子科技大学计算
14、机学院16记录负荷(记录负荷(Payload)n支持支持4种协议消息种协议消息:application_data、alert、handshake、change_cipher_spec.nAlert协议消息:协议消息:报警等级(报警等级(warning/fatal)+具体报具体报警编码警编码 2字节字节nchange_cipher_spec协议消息:协议消息:1字节,将挂起状态字节,将挂起状态变成当前状态,指示在此之后的所有消息都将使用刚刚变成当前状态,指示在此之后的所有消息都将使用刚刚商定的密码进行加密。商定的密码进行加密。nhandshake协议消息:类型(协议消息:类型(1字节字节)长度(
15、)长度(3字字节节)消息,类型共)消息,类型共10种种.2022-11-3西安电子科技大学计算机学院17记录负荷(记录负荷(Payload).2022-11-3西安电子科技大学计算机学院18完整完整SSL会话握手协会话握手协议议交换交换Hello消息,对于算法、消息,对于算法、交换随机值等协商一致交换随机值等协商一致交换必要的密码参数,以便交换必要的密码参数,以便双方得到统一的双方得到统一的premaster secret交换证书和相应的密码信息,交换证书和相应的密码信息,以便进行身份认证以便进行身份认证产生产生master secret把安全参数提供给把安全参数提供给SSL记录层记录层检验双
16、方是否已经获得同样检验双方是否已经获得同样的安全参数的安全参数.2022-11-3西安电子科技大学计算机学院19.2022-11-3西安电子科技大学计算机学院20第一阶段:建立起安全协商第一阶段:建立起安全协商n客户发送一个客户发送一个client_hello消息,包括以下参数:版消息,包括以下参数:版本、随机数本、随机数(32位时间戳位时间戳+28字节随机序列字节随机序列)、会话、会话ID、客户支持的密码算法列表客户支持的密码算法列表(CipherSuite)、客户支持、客户支持的压缩方法列表的压缩方法列表.然后,客户等待服务器的然后,客户等待服务器的server_hello消息消息n服务器
17、发送服务器发送server_hello消息,参数:客户建议的低消息,参数:客户建议的低版本以及服务器支持的最高版本、服务器产生的随机版本以及服务器支持的最高版本、服务器产生的随机数、会话数、会话ID、服务器从客户建议的密码算法和压缩方、服务器从客户建议的密码算法和压缩方法中确定一套本次连接使用的确定方法法中确定一套本次连接使用的确定方法.2022-11-3西安电子科技大学计算机学院21CipherSuiten指定了密钥交换的方法,指定了密钥交换的方法,SSL支持以下一些方法:支持以下一些方法:qRSA,要求服务器提供一个,要求服务器提供一个RSA证书证书qDH(Diffie-Hellman),
18、要求服务器的证书中包含了由,要求服务器的证书中包含了由CA签名的签名的DH公开参数。客户或者在证书中提供公开参数。客户或者在证书中提供DH公开参数,或者在密钥公开参数,或者在密钥交换消息中提供此参数交换消息中提供此参数qEDH(Ephemeral Diffie-Hellman),产生临时的密钥,产生临时的密钥,DH公开公开参数由发送者的私钥进行签名,接收者用对应的公钥进行验证参数由发送者的私钥进行签名,接收者用对应的公钥进行验证q 匿名的匿名的DH,不加鉴别。会受到中间人攻击,不加鉴别。会受到中间人攻击n然后,指定以下信息然后,指定以下信息q加密算法和类型加密算法和类型(流还是分组密码算法流还
19、是分组密码算法)qHMAC、MD5还是还是SHA-1q是否可出口是否可出口qHashSizeq Key Materialq IV Size.2022-11-3西安电子科技大学计算机学院22第二阶段:服务器鉴别和密钥交换第二阶段:服务器鉴别和密钥交换n服务器发送服务器发送certificate消息,消息包含一个消息,消息包含一个X.509证书,证书,或者一条证书链或者一条证书链q除了匿名除了匿名DH之外的密钥交换方法都需要之外的密钥交换方法都需要n服务器发送服务器发送server_key_exchange消息消息q可选的,有些情况下可以不需要。只有当可选的,有些情况下可以不需要。只有当certi
20、ficate消息消息没有包含必需的数据的时候才发送此消息没有包含必需的数据的时候才发送此消息q消息包含签名,被签名的内容包括两个随机数以及服消息包含签名,被签名的内容包括两个随机数以及服务器参数务器参数n服务器发送服务器发送certificate_request消息(可选)消息(可选)q非匿名非匿名server可以向客户请求一个证书可以向客户请求一个证书q包含证书类型和包含证书类型和CAsn服务器发送服务器发送server_hello_done,然后等待应答然后等待应答.2022-11-3西安电子科技大学计算机学院23第二阶段:服务器鉴别和密钥交换第二阶段:服务器鉴别和密钥交换.2022-11
21、-3西安电子科技大学计算机学院24第三阶段:客户鉴别和密钥交换第三阶段:客户鉴别和密钥交换n客户收到server_done消息后,它根据需要检查服务器提供的证书,并判断server_hello的参数是否可以接受,如果都没有问题的话,发送一个或多个消息给服务器。n如果服务器请求证书的话,则客户首先发送一个certificate消息,若客户没有证书,则发送一个no_certificate警告。然后客户发送client_key_exchange消息,消息的内容取决于密钥交换的类型(如果是RSA,则含加密的PreMasterSecret)。n最后,客户发送一个certificate_verify消息(
22、可选),其中包含一个签名,对从第一条消息以来的所有握手消息的HMAC值(用master_secret)进行签名.2022-11-3西安电子科技大学计算机学院25第三阶段:客户鉴别和密钥交换第三阶段:客户鉴别和密钥交换.2022-11-3西安电子科技大学计算机学院26第四阶段:结束第四阶段:结束n第四阶段建立起一个安全的连接n客户发送一个change_cipher_spec消息,并且把协商得到的CipherSuite拷贝到当前连接的状态之中n然后,客户用本次连接协商的算法、密钥参数发送一个finished消息,这条消息可以检查密钥交换和鉴别过程是否已经成功。其中包括一个校验值,对所有以来的消息进
23、行校验。n服务器同样发送change_cipher_spec消息和finished消息。n握手过程完成,客户和服务器可以交换应用层数据。.2022-11-3西安电子科技大学计算机学院27第四阶段:结束第四阶段:结束.2022-11-3西安电子科技大学计算机学院28密钥交换算法密钥交换算法nSSL记录协议需要:记录协议需要:CipherSuite,master secret,the client&server random valuesn在在hello消息中,交换随机数以及各种算法消息中,交换随机数以及各种算法n两类密钥交换算法:两类密钥交换算法:qRSA,客户产生一个,客户产生一个48字节的字
24、节的pre_master_secret,然,然后通过服务器的公钥传递给服务器后通过服务器的公钥传递给服务器qDiffie-Hellman,双方协商得到的密钥被用作,双方协商得到的密钥被用作pre_master_secretn对于各种密钥交换算法,从对于各种密钥交换算法,从pre_master_secret计算得到计算得到Master_secret,然后从内存中删除,然后从内存中删除nMaster_secret总是总是48字节长,而字节长,而pre_master_secret长长度不定,取决于密钥交换算法度不定,取决于密钥交换算法.2022-11-3西安电子科技大学计算机学院29密钥导出密钥导出
25、.2022-11-3西安电子科技大学计算机学院30Master_secret的产生的产生nSSL 3.0Master_secret=MD5(pre_master_secretSHA-1(Apre_master_secret|ClientHello.random ServerHello.random)MD5(pre_master_secretSHA-1(BBpre_master_secret|ClientHello.random ServerHello.random)MD5(pre_master_secretSHA-1(CCCpre_master_secret|ClientHello.rando
26、m ServerHello.random)n TLS 1.0master_secret=PRF(pre_master_secret,“master secret”,ClientHello.random,+ServerHello.random)0.47*PRF(secret,label,seed)为伪随机函数.2022-11-3西安电子科技大学计算机学院31伪随机函数伪随机函数PRF(secret,label,seed)nP_hash(secret,seed)=+HMAC_hash(secret,A(1)+seed)+HMAC_hash(secret,A(2)+seed)+HMAC_hash(s
27、ecret,A(3)+seed)+.n这里A()定义如下:A(0)=seed A(i)=HMAC_hash(secret,A(i-1)n伪随机函数qPRF(secret,label,seed)=P_MD5(S1,label+seed)XOR P_SHA-1(S2,label+seed);这里,S1和S2为secret的各一半,如果secret为奇数个字节,则S1和S2共享一个字节.2022-11-3西安电子科技大学计算机学院32最终需要的密钥导出最终需要的密钥导出.2022-11-3西安电子科技大学计算机学院33密钥导出公式密钥导出公式Key_block=MD5(master_secret|S
28、HA-1(A+master_secret+server_random+client_random)|MD5(master_secret|SHA-1(BB+master_secret+server_random+client_random)|MD5(master_secret|SHA-1(CCC+master_secret+server_random+client_random)|MD5(master_secret|SHA-1(DDDD+master_secret+server_random+client_random)|.2022-11-3西安电子科技大学计算机学院34MAC计算计算n使用共享
29、的密钥MAC_write_secretnhash(MAC_write_seret|pad_2|hash(MAC_write_secret|pad_1|seq_num|SSLCompressed.type|SSLCompressed.length|SSLCompressed.fragment)其中:MAC_write_secret:共享的保密密钥hash:密码散列函数(MD5或SHA-1)pad_1:0 x36重复48次(MD5);或40次(SHA-1)pad_2:0 x5C重复48次(MD5);或40次(SHA-1)seq_num:该消息的序列号SSLCompressed.type:更高层协议
30、用于处理本分段SSLCompressed.length:压缩分段的长度SSLCompressed.fragment:压缩的分段(无压缩时为明文段)注:非常类似HMAC.2022-11-3西安电子科技大学计算机学院35报警报警(Alert)协议协议n用来一方向另一方报告例外情况用来一方向另一方报告例外情况,两个级别两个级别:warning/fataln如果是如果是Fatal级别的报警级别的报警,则应终止连接则应终止连接.n报警种类:报警种类:unexpected_message bad_record_mac decryption_failed record_overflow decompress
31、ion_failure handshake_failure no_certificate bad_certificate unsupported_certificate certificate_revoked certificate_expired certificate_unknown illegal_parameter unknown_ca access_denied decode_error decrypt_error export_restriction protocol_version insufficient_security internal_error user_cancell
32、ed no_renegotiation.2022-11-3西安电子科技大学计算机学院36会话恢复会话恢复n整个握手协议开销巨大整个握手协议开销巨大,如果集成会话恢复机制如果集成会话恢复机制,则可以则可以在客户和服务器通信过一次的情况下在客户和服务器通信过一次的情况下,可以跳过握手阶段可以跳过握手阶段而直接进行数据传输而直接进行数据传输.n通过使用上一次握手中确立的通过使用上一次握手中确立的pre_master_secret,则可则可以避免许多计算开销。以避免许多计算开销。n恢复允许根据共同的恢复允许根据共同的master_secret,来产生新的密钥。,来产生新的密钥。n通过客户使用通过客户使
33、用ClientHello中的中的Session_id,申请会话,申请会话恢 复,服 务 器 通 过 使 用恢 复,服 务 器 通 过 使 用 S e r v e r H e l l o 中 相 同 的中 相 同 的Session_id,来同意会话恢复,接下来就会跳过其余步,来同意会话恢复,接下来就会跳过其余步骤而使用保存的骤而使用保存的master_secret来产生新的所有的加密来产生新的所有的加密密钥(由于新的随机数不同,而使得新产生的加密密钥密钥(由于新的随机数不同,而使得新产生的加密密钥与以前不同)。与以前不同)。.2022-11-3西安电子科技大学计算机学院37客户端认证客户端认证n
34、实现服务器对客户端的认证实现服务器对客户端的认证n服务器通过向客户端发送服务器通过向客户端发送CertificateRequest消息,客户端通过消息,客户端通过Certificate和和CertificateVerify消息予以应答消息予以应答nCertificateVerify消息是一个使用与其传输的消息是一个使用与其传输的证书关联的私钥签名的消息。证书关联的私钥签名的消息。.2022-11-3西安电子科技大学计算机学院38临时临时RSAn因受出口限制,为配合客户端,服务器会产生一因受出口限制,为配合客户端,服务器会产生一个临时的低强度密钥,并用高强度密钥签名,客个临时的低强度密钥,并用高
35、强度密钥签名,客户端将验证临时密钥上的服务器签名,并使用它户端将验证临时密钥上的服务器签名,并使用它来打包来打包pre_master_Secret.n服务器向客户端发送消息服务器向客户端发送消息 ServerKeyExchange.2022-11-3西安电子科技大学计算机学院39再握手再握手n是在当前受保护的连接上进行的一次新的是在当前受保护的连接上进行的一次新的SSL握手,握手,因而传输过程中的握手消息是经过加密的因而传输过程中的握手消息是经过加密的n一旦新的握手完成,将使用新的会话状态来保护数一旦新的握手完成,将使用新的会话状态来保护数据据n客户端可以简单的通过发送一条客户端可以简单的通过
36、发送一条ClientHello消息来消息来初始化一次新的握手初始化一次新的握手n服务器端可以通过服务器端可以通过HelloRequest消息来初始化一次消息来初始化一次新的握手新的握手.2022-11-3西安电子科技大学计算机学院40SSL的安全性的安全性n保护保护master_secretn保护服务器的私钥保护服务器的私钥n使用良好的随机数使用良好的随机数n证书链检查证书链检查n算法选择(强度)算法选择(强度).2022-11-3西安电子科技大学计算机学院41SSL实现实现nOpenSSL,最新最新0.9.8,实现了实现了SSLv2,SSLv3,TLSv1.0qOpenssl a comma
37、nd line tool.qssl(3)the OpenSSL SSL/TLS library.qcrypto(3)the OpenSSL Crypto library.qURL:http:/www.openssl.orgnSSLeayqhttp:/www2.psy.uq.edu.au/ftp/Crypto/nInternet号码分配当局已经为具备号码分配当局已经为具备SSL功能的应用分配了功能的应用分配了固定的端口号固定的端口号q例如带例如带SSL的的HTTP(https)被分配以端口号被分配以端口号443q带带SSL的的SMTP(ssmtp)被分配以端口号被分配以端口号465q带带SSL的
38、的NNTP(snntp)被分配以端口号被分配以端口号563.2022-11-3西安电子科技大学计算机学院42Windows 2000和和XP下的下的IPSecn文章文章 http:/ http:/ http:/ 与与IETF兼容兼容 支持支持Kerberos、基于证书的认证、基于共享密钥的认证、基于证书的认证、基于共享密钥的认证 一些不受一些不受IPSec保护的流量:广播包、组播包、保护的流量:广播包、组播包、RSVP包、包、IKE包、包、Kerberos包包 与与L2TP结合起来提供安全的结合起来提供安全的VPN远程访问远程访问 不能与不能与NAT协同工作协同工作 仍然面临一些攻击:仍然面临
39、一些攻击:DOS,其他层上协议的攻击,其他层上协议的攻击n对比对比FreeBSD的实现:的实现:http:/www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/ipsec.html.2022-11-3西安电子科技大学计算机学院43SET协议协议Secure Electronic Transaction.2022-11-3西安电子科技大学计算机学院44第三部分第三部分 SET协议协议nSecure Electronic Transaction,SET 安全电子交易协议安全电子交易协议n1996年年,由由Visa和和MasterCard两大国际信用
40、卡组织联合开发的两大国际信用卡组织联合开发的电子商务交易参考标准(复杂、开放)。为在电子商务交易参考标准(复杂、开放)。为在Internet上从事上从事在线交易而设立的一个开放的以信用卡交易为特征的规范。在线交易而设立的一个开放的以信用卡交易为特征的规范。n得到得到IBM、HP、Microsoft、Verifone、RSA、Terisa、GTE、Verisign等公司的支持,成为事实上的工业标准,并为等公司的支持,成为事实上的工业标准,并为IETF所所认可。认可。nSET本身不是一个支付系统,而是一个安全协议和格式集。本身不是一个支付系统,而是一个安全协议和格式集。n实现交易参与者行为的安全性
41、、一致性、广泛性实现交易参与者行为的安全性、一致性、广泛性n支持产品包括支持产品包括IBM的的Net.Commerce、CommercePoint,Verifone的的vWallet、vPos、vGate,Microsft的的MS-Wallet等等n其他产品还包括:其他产品还包括:CyberCash、GlobalSet、TrinTech、DigiCash、OpenMarket等。等。.2022-11-3西安电子科技大学计算机学院45SET协议的发展历史协议的发展历史n1996年,年,Visa MasterCard 作为主要制定作为主要制定者发起并公布。者发起并公布。1997年出版规范,长达年出
42、版规范,长达971页。页。n1998年出现年出现SET兼容的产品。兼容的产品。nSET协议标准组织协议标准组织SETCo 在在1998和和1999年提年提出许多协议扩展。出许多协议扩展。n目前因各种原因,该协议因其复杂性,而受到目前因各种原因,该协议因其复杂性,而受到冷落,前途比较渺茫。冷落,前途比较渺茫。n其设计思想值学习和探讨。其设计思想值学习和探讨。.2022-11-3西安电子科技大学计算机学院46电子商务(电子商务(Electronic Commerce,EC)n是指利用简单、快捷、低成本的电子通信方式,买卖双方是指利用简单、快捷、低成本的电子通信方式,买卖双方从事的商贸活动(不谋面或
43、少谋面)。从事的商贸活动(不谋面或少谋面)。n内容:内容:电子方式为特征电子方式为特征 商贸活动商贸活动n电子方式:电话、传真、电子方式:电话、传真、EMAIL、Internet、EDI等。等。n最终模式应是建立在最终模式应是建立在Internet上上n活动流:网络上信息流、商流、资金流、部分物流的实现。活动流:网络上信息流、商流、资金流、部分物流的实现。n具体活动:交易方匹配、洽谈、订货、合同、支付、发票、具体活动:交易方匹配、洽谈、订货、合同、支付、发票、报关、纳税、售后服务等。报关、纳税、售后服务等。n涉及的机构:消费者、商家、金融机构、政府机构、认证涉及的机构:消费者、商家、金融机构、
44、政府机构、认证机构、配送中心等。机构、配送中心等。n特征:普遍性、方便性、整体性、安全性、协调性等。特征:普遍性、方便性、整体性、安全性、协调性等。.2022-11-3西安电子科技大学计算机学院47电子商务发展阶段电子商务发展阶段n20世纪世纪6090年代,基于年代,基于EDI(电子数据交换)(电子数据交换)的电子商务的电子商务q是指业务文件按照一个公认的标准从一台计算机传输到是指业务文件按照一个公认的标准从一台计算机传输到另一台计算机上的电子传输方式。另一台计算机上的电子传输方式。q依赖于专用网络和专用依赖于专用网络和专用EDI软件软件q标准:标准:美国美国X12 联合国联合国UN/EDIF
45、ACTn20世纪世纪90年代以后,基于年代以后,基于Internet的电子商务的电子商务qDell公司的网络直销公司的网络直销qAmazon公司的网上书店公司的网上书店qeBay公司的个人拍卖网站公司的个人拍卖网站q应用模式:应用模式:n支付角度:支付型非支付型支付角度:支付型非支付型n服务角度:服务角度:B2B B2C C2C B2G C2G.2022-11-3西安电子科技大学计算机学院48电子商务分类支付角度电子商务分类支付角度电子商务业务支付型非支付型NON-SET支付SET支付税务申报、电子选举、在线报表、安全政务等电子银行、代缴代付、电子证券、网上购物等支付卡交易、电子银行、网上购物
46、等.2022-11-3西安电子科技大学计算机学院49电子商务安全需求与措施电子商务安全需求与措施n安全性需求安全性需求q有效性有效性q机密性机密性q完整性完整性q可靠性可靠性/不可抵赖性不可抵赖性/鉴别鉴别q可审查性可审查性n措施措施q加密技术加密技术 对称加密对称加密/公钥加密公钥加密q密钥管理技术密钥管理技术 数字证书数字证书q数字签名数字签名q安全电子商务协议安全电子商务协议 安全电子邮件安全电子邮件/SSL/SET.2022-11-3西安电子科技大学计算机学院50SET协议安全支付商业需求协议安全支付商业需求n提供付款和订购信息的保密性提供付款和订购信息的保密性n确保传送数据的完整性确
47、保传送数据的完整性n为持卡人是否为信用卡帐号合法用户提供认证为持卡人是否为信用卡帐号合法用户提供认证n为商家提供认证为商家提供认证n确保交易各方利益确保交易各方利益n创建不依赖于传输安全机制也不妨碍其使用的创建不依赖于传输安全机制也不妨碍其使用的协议协议n在软件和网络提供者之间提供功能设施和互操在软件和网络提供者之间提供功能设施和互操作性作性.2022-11-3西安电子科技大学计算机学院51SET协议中安全特性和实现协议中安全特性和实现nSET协议中安全考虑协议中安全考虑q信息保密性帐号和支付信息等的传输安全,加密信息保密性帐号和支付信息等的传输安全,加密技术技术q认证持卡人帐号和商家认证,通
48、过数字证书机制,认证持卡人帐号和商家认证,通过数字证书机制,确认参与者的真实身份确认参与者的真实身份q防止抵赖防止抵赖 数字签名技术数字签名技术q数据完整性防止客户发送给商家的信息被篡改数据完整性防止客户发送给商家的信息被篡改,数字签名和数字签名和HASH、MAC手段手段q授权授权n安全实现安全实现q在消费者端在消费者端 实现实现 安全电子钱包安全电子钱包q在商家在商家 实现实现 安全电子商家安全电子商家q在银行等金融机构在银行等金融机构 实现安全支付网关,完成实现安全支付网关,完成SET协协议和银行金融系统相关标准(如议和银行金融系统相关标准(如ISO8583)的转换。)的转换。.2022-
49、11-3西安电子科技大学计算机学院52SET 协议规范概述协议规范概述n规范涉及的内容:规范涉及的内容:q加密算法的应用加密算法的应用q证书消息和对象格式证书消息和对象格式q购买消息和对象格式购买消息和对象格式q请款消息和对象格式请款消息和对象格式q交易实体之间消息协议交易实体之间消息协议nSET 规范描述了系统设计考虑、证书管理、支付规范描述了系统设计考虑、证书管理、支付系统正式的协议定义、传输机制以及增加的扩展系统正式的协议定义、传输机制以及增加的扩展(支持硬件设备、特殊消息等)。(支持硬件设备、特殊消息等)。n大量采用已经存在的、相关的、用于支持的国际大量采用已经存在的、相关的、用于支持
50、的国际标准。标准。.2022-11-3西安电子科技大学计算机学院53SET组件组件.2022-11-3西安电子科技大学计算机学院54涉及的实体和概念涉及的实体和概念n持卡人(持卡人(Cardholder)n商家(商家(Merchant)n发卡行(发卡行(Issuer)n收单行(收单行(Acquirer)n支付网关(支付网关(Payment Gateway)n支付卡品牌(支付卡品牌(Brand)n认证中心(认证中心(Certificate Authority,CA).2022-11-3西安电子科技大学计算机学院55双签名双签名n目的在于(持卡人)将商家订单信息(目的在于(持卡人)将商家订单信息(
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。