标题：SET协议
简介
SET协议
电子商务在提供机遇和便利的同时，也面临着一个最大的挑战，即交易的安全问题。在网上购物的环境中，持卡人希望在交易中保密自己的帐户信息，使之不被人盗用；商家则希望客户的定单不可抵赖，并且，在交易过程中，交易各方都希望验明其他方的身份，以防止被欺骗。针对这种情况，由美国Visa和MasterCard两大信用卡组织联合国际上多家科技机构，共同制定了应用于Internet上的以银行卡为基础进行在线交易的安全标准，这就是"安全电子交易"（Secure Electronic Transaction，简称SET）。它采用公钥密码体制和X.509数字证书标准，主要应用于保障网上购物信息的安全性。
由于SET 提供了消费者、商家和银行之间的认证，确保了交易数据的安全性、完整可靠性和交易的不可否认性，特别是保证不将消费者银行卡号暴露给商家等优点，因此它成为了目前公认的信用卡/借记卡的网上交易的国际安全标准。
SET(Secure Electronic Transaction)安全电子交易协议主要应用于B to C模式中保障支付信息的安全性。SET协议本身比较复杂，设计比较严格，安全性高，它能保证信息传输的机密性、真实性、完整性和不可否认性。SET协议是PKI框架下的一个典型实现，同时也在不断升级和完善，如SET 2.0将支持借记卡电子交易。
SET 协议的主要目标
1. 防止数据被非法用户窃取，保证信息在互联网上安全传输。
2. SET 中使用了一种双签名技术保证电子商务参与者信息的相互隔离。客户的资料加密后通过商家到达银行，但是商家不能看到客户的帐户和密码信息。
3. 解决多方认证问题。不仅对客户的信用卡认证，而且要对在线商家认证，实现客户、商家和银行间的相互认证。
4. 保证网上交易的实时性，使所有的支付过程都是在线的。
5. 提供一个开放式的标准，规范协议和消息格式，促使不同厂家开发的软件具有兼容性和互操作功能。可在不同的软硬件平台上执行并被全球广泛接受。
SET提供的服务
SET协议为电子交易提供了许多保证安全的措施。它能保证电子交易的机密性，数据完整性，交易行为的不可否认性和身份的合法性。SET协议设计的证书中包括：银行证书及发卡机构证书、支付网关证书和商家证书。 
(1)保证客户交易信息的保密性和完整性 
SET协议采用了双重签名技术对SET交易过程中消费者的支付信息和订单信息分别签名，使得商家看不到支付信息，只能接收用户的订单信息；而金融机构看不到交易内容，只能接收到用户支付信息和帐户信息，从而充分保证了消费者帐户和定购信息的安全性。 
(2)确保商家和客户交易行为的不可否认性 
SET协议的重点就是确保商家和客户的身份认证和交易行为的不可否认性。其理论基础就是不可否认机制，采用的核心技术包括X.509电子证书标准，数字签名，报文摘要，双重签名等技术。 
(3)确保商家和客户的合法性 
SET协议使用数字证书对交易各方的合法性进行验证。通过数字证书的验证，可以确保交易中的商家和客户都是合法的，可信赖的。
SET的交易流程
SET交易过程中要对商家，客户，支付网关等交易各方进行身份认证，因此它的交易过程相对复杂。 
(1)客户在网上商店看中商品后，和商家进行磋商，然后发出请求购买信息。 
(2)商家要求客户用电子钱包付款。 
(3)电子钱包提示客户输入口令后与商家交换握手信息，确认商家和客户两端均合法。 
(4)客户的电子钱包形成一个包含订购信息与支付指令的报文发送给商家。 
(5)商家将含有客户支付指令的信息发送给支付网关。 
(6)支付网关在确认客户信用卡信息之后，向商家发送一个授权响应的报文。 
(7)商家向客户的电子钱包发送一个确认信息。 
(8)将款项从客户帐号转到商家帐号，然后向顾客送货，交易结束。 
从上面的交易流程可以看出，SET交易过程十分复杂性，在完成一次S ET协议交易过程中，需验证电子证书9次，验证数字签名6次，传递证书7次，进行签名5次，4次对称加密和非对称加密。通常完成一个SET协议交易过程大约要花费1.5－2分钟甚至更长时间。由于各地网络设施良莠不齐，因此，完成一个SET协议的交易过程可能需要耗费更长的时间。
SET的安全性分析
采用公钥加密和私钥加密相结合的办法保证数据的保密性　　SET协议中，支付环境的信息保密性是通过公钥加密法和私钥加密法相结合的算法来加密支付信息而获得的。它采用的公钥加密算法是RSA的公钥密码体制，私钥加密算法是采用DES数据加密标准。这两种不同加密技术的结合应用在SET中被形象的成为数字信封，RSA加密相当于用信封密封，消息首先以56位的DES密钥加密，然后装入使用1024位RSA公钥加密的数字信封在交易双方传输。这两种密钥相结合的办法保证了交易中数据信息的保密性。采用信息摘要技术保证信息的完整性SET协议是通过数字签名方案来保证消息的完整性和进行消息源的认证的，数字签名方案采用了与消息加密相同的加密原则。即数字签名通过RSA加密算法结合生成信息摘要，信息摘要是消息通过HASH函数处理后得到的唯一对应于该消息的数值，消息中每改变一个数据位都会引起信息摘要中大约一半的数据位的改变。而两个不同的消息具有相同的信息摘要的可能性及其微小，因此HASH函数的单向性使得从信息摘要得出信息的摘要的计算是不可行的。信息摘要的这些特征保证了信息的完整性。采用双重签名技术保证交易双方的身份认证SET协议应用了双重签名（Dual Signatures）技术。在一项安全电子商务交易中，持卡人的定购信息和支付指令是相互对应的。商家只有确认了对应于持卡人的支付指令对应的定购信息才能够按照定购信息发货；而银行只有确认了与该持卡人支付指令对应的定购信息是真实可靠的才能够按照商家的要求进行支付。为了达到商家在合法验证持卡人支付指令和银行在合法验证持卡人订购信息的同时不会侵犯顾客的私人隐私这一目的，SET协议采用了双重签名技术来保证顾客的隐私不被侵犯。
SET的改进
SET协议提供了在B2C平台上信用卡在线支付的方式，不过由于其实现起来非常复杂，商家和银行都需要改造系统来实现相互操作，如此看来，SET的普遍应用还需要假以时日。无论是使用SSL协议还是使用SET协议进行在线支付，它们总有不如人意之处。但由于SET在安全性，保密性上的优势，它本应成为未来电子商务实现在线支付的主流方式。笔者针对其主要问题——商品质量和残留数据的处理方式上，提出了改进方案：引入商品质量检测机制来保证商品的质量；建立一个“交易信息档案中心”来解决交易后残留数据的归属，以此保证用户的利益。引入商品质量检测机制保证商品质量引入这种机制的具体做法是商家把商品直接发送到消费者所在地的官方商品质量检测机构，由这些专业质检机构来检测商品质量问题，检测完毕后再通知消费者前来领取商品。如果消费者需要此服务，必须和商家协商分摊质量检测的费用；如果不需要，就按照一般的SET流程交易。因此，我们引入商品质量检测机制可以检查商品质量，解决了SET协议中产生的“如果商品质量问题由谁负担”的问题。这样既能保证用户的利益，也能保证商家的利益不被损害。引进商品质量检测机制后SET的交易流程引进商品质量检测机制后，基于SET的交易过程与原来相比更复杂了些，也需要对SET消息报文进行修改，需要将质量检测信息作为附件形式加入SET消息报文中。因此要在SET 信息报文中增加附件位，可考虑附件位的标识为0和1两种情况，其中0表示没有附件，1表示存在附件。附加的附件信息包括交易双方的有关信息（如给双方打上编号）、商品名称、商品保质期、商品生存周期等. 
(1)用户查询商品的信息，确定所要定购的商品。 
(2)用户和商家进行探讨，确定商品质量检测费用该如何分摊。 
(3)将定购单和支付信息一起以电子数据的方式来发给商家。 
(4)商家进行验证，向用户所拥有的支付卡的金融机构请求取得支付授权。 
(5)金融机构验证数字签名，验证用户信息的合法性。如果合法则发送授权信息。 
(6)商家验证授权信息后，向用户发出定购确认信息。同时查询用户所在地区的商品质量检测部门的信息。由商家将商品配送到用户所在地区的商品质量检测部门。 
(7)用户所在地商品质量检测部门接收商家的商品。在验收产品质量后，将附件位由0改为1，并附加附件具体信息，向商家发送收货信息并负责配送商品给消费者；商家向用户所拥有的支付卡的金融机构请求付款。 
(8)用户得到满意的商品后，对付款单进行签名，向商品质量检测部门表示同意付款，并向自己的支付卡所在的发行卡发送支付信息。发卡行在同时得到商家付款请求和用户同意付款的信息之后，方可付款。
结论
SET协议是由美国的公司发起并联合开发的，因此，SET协议支持信用卡支付这一支付方式比较符合欧美各国的使用情况。可是实际应用上，SET要求持卡人在客户端安装电子钱包，增加了顾客交易成本，交易过程又相对复杂，因此比较少顾客接受这种网上即时支付方式。 
而在中国，信用卡支付这种方式还没有普及，因此SET协议在我国的使用也相对较少。电子支付无论要采取哪种支付协议，都应该考虑到安全因素，成本因素和使用的便捷性这三方面，由于这三者在SET协议和SSL协议里的任何一个协议里面无法全部体现，这就造成现阶段SSL协议和SET协议并存使用的局面。但即便将来业界开发结合这三个优点的电子支付协议，也未必能完全保证电子支付和网上银行的安全。 
因为网上银行的安全涉及到方方面面，不只是一个完善的安全支付协议，一堵安全的防火墙或者一个电子签名就能简单解决的问题。所以，现在银行必须加大加强管理力度，加大宣传力度，帮助顾客树立起安全意识，指导用户该如何正确使用网上银行，并发动社会各方面的力量，寻求多方联动的策略来保证网上银行的安全。只有社会各界一起努力，才能保证电子支付的安全；只有社会各界一起努力，才能保证网上银行的安全；也只有社会各界一起努力，才可以保证电子商务的安全，保证电子商务的快速有序的发展。
相关领域
CA中心 HTTP协议 SSL协议 万事达国际组织 商业发票 电子商务系统 电子支付 电子邮政 电子钱包 金融术语英汉对照