一种改进的电子支付协议

时间:2022-08-20 10:38:56

【前言】一种改进的电子支付协议由文秘帮小编整理而成,但愿对你的学习工作带来帮助。STPP是为银行卡支付系统设计的一种新的支付流程协议。STPP是基于SET和TLS协议提出的,STPP的基本框架与SET协议类似,不同的是用STL/WTLS协议中的握手机制来实现消费者和商店之间,消费者和支付网关之间的身份认证。利用SET协议的优点来保证STPP的安全性,用TLS/WTLS来...

一种改进的电子支付协议

[摘要] 本文在SET和TLS/WTLS协议的基础上提出了一种改进电子支付协议STPP,对STTP的支付流程的进行了详细阐述,并使用Kailar逻辑证明了STPP协议的安全性及可靠性。

[关键词] 电子支付SETSTTP

一、引言

在电子支付系统中主要有TLS/WTLS和SET两种协议。前者的主要缺点在于安全性不高,但是基于前者构建的电子支付系统实现简单,身份验证时间短,消费者端和电子商店端的负担都不大。而SET协议为了保证系统最大的安全性,在工作流程的每一步都需要进行证书交换、身份验证和报文传输过程中的加密算法的协商,这无疑降低了系统的效率。为此,本文在以上两种协议的基础上提出并设计了一种改进的电子支付流程协议STPP。

二、STPP及支付流程

STPP是为银行卡支付系统设计的一种新的支付流程协议。STPP是基于SET和TLS协议提出的,STPP的基本框架与SET协议类似,不同的是用STL/WTLS协议中的握手机制来实现消费者和商店之间,消费者和支付网关之间的身份认证。利用SET协议的优点来保证STPP的安全性,用TLS/WTLS来避免SET协议的弱点。从SET协议中,借用以下做法:使用双签名来保证数据的完整性;使用商店在每次交易时产生的交易ID号机制;消费者、商店与支付网关之间的端到端的证书交换。从TLS/WTLS协议中,借用以下做法:安全参数的协商机制;经过协商消费者和商店获得证书的机制。STPP的支付流程分为证书交换、购买请求、支付验证和处理阶段等三个阶段。

1.证书交换阶段

根据STPP可知,在消费者向电子商店下定单之前,需要通过TLS/WTLS协议中的握手协议来交换双方的证书,验证双方的身份,还会协商保证随后通信安全的加密算法、密钥等。首先消费者向电子商店发送请求,这个过程称为消费者向电子商店打招呼,将消费者能使用或支持的加密算法等参数告诉电子商店。

电子商店收到消费者的握手请求后,也向消费者打招呼,电子商店将自己从消费者发送过来的加密算法等参数列表中选择能支持的几种告诉消费者,并且将电子商店和支付网关的证书也一起发送给消费者。随后,消费者验证电子商店和支付网关的身份,验证通过后,向电子商店发送确认信息,通知电子商店身份己经通过验证,并且还通过报文将消费者的证书发送给电子商店。最后,电子商店验证消费者的身份,通过验证后,向消费者发送确认信息。至此,证书交换过程完成。

2.购买请求阶段

购买请求阶段使用证书交换阶段所协商的加密算法等参数来保证消费者的订单信息和电子商店的支付信息。

在这阶段,消费者将挑选好的货物信息使用支付网关的公钥加密发送给电子商店。发送的内容是:{(OI)’+[(PI)’+card No.] PpubK}。其中(OI)’=(OI)Ks+MD2(PI)+双签名(Ks为会话密钥,Ks是证书交换阶段消费者和商店协商出来的),(PI)’=PI+MD1(OI)+双签名,购买请求阶段双签名的形式:{{MD3[MD 1(OI)+MD2(PI)]}BprivateK},BprivateK指的是消费者的私钥。

3.支付验证和处理阶段

支付验证和处理阶段主要处理支付网关和电子商店之间的事务。当电子商店向支付网关发送验证消费者账号的请求后,支付网关从金融机构获得消费者账号有效后,除了通知电子商店消费者账号有效之外,还要将本次交易的详细内容发送给消费者,交易的细节可从支付网关的数据库中获得。消费者可以查证交易的细节,根据查证的结果还可以决定是否取消交易,对于这点,只需要消费者向支付网关和电子商店发送取消交易的信息即可。

三、STPP支付协议的Kailar逻辑证明

1.Kailar逻辑简介

Kailar逻辑是一种形式化逻辑证明方法。它的基本概念是可追溯性,即协议中源到目标的“动作”(即发送一组数据)可以向第三方“证明”。与BAN逻辑不同的是,它不是研究协议中的“信任”(Believe)关系,而是研究“可证明”(CanProve)的关系。“证明”又分两种“强证明”(A CanProve x,即A可以证明x)和“弱证明” (A CanProve x to B,即A可以向B证明x,这里B为某个特定的对象或主机)。

Kailar逻辑的记号、语义和语法参见文献。几个基本的推理规则:K1:(A CanProve x;A CanProve y)|=A CanProve(x∧y);K2:(A CanProve x;x=>y) |=A CanProve y;K3:((S(表示一组前提);C CanProve y)=>(A CanProve x)) |= ((S;C CanProve y to B)=>(A CanProve x to B));K4:((S;C IsTrustedon y)=>(A CanProve x)) |=((S;C IsTrustedon by B)=>(A CanProve x to B));K5:(A Receives(m SignedWith K-1);x in m;A CanProve (K Authenticates B))=(A CanProve(B Says x));K6:(A CanProve(B Says x);A CanProve(B IsTrustedon x) |= (A CanProve x)。

2.STPP协议的安全性分析

(1)STPP协议的过程描述

(2)安全性分析

①协议目标

由于STPP协议是电子支付协议,其目标只完成电子支付,不涉及服务的兑现,因而可表述为:C CanProve(RD,H(TD))(即M收到了付款);M CanProve(RD,H(TD)) (即A履行了付款)。

②协议的形式化

1)M Receives TD SignedWith Kc-1;2)B Receives TD SignedWith Km-1;B Receives TD SignedWith Kc-1;3)M Receives (RD,H(TD)) SignedWith Kb-1;4)C Receives (RD,H(TD)) SignedWith Kb-1。

③初始假设

P1:C,M CanProve(Kb Authenticates B);P2:C,B CanProve(Km Authenticates M);P3:M,B CanProve (Kc Authenticates C);P4:C,M CanProve(B IsTrustedon(RD,H(TD)))。另外,当B可以证明C和M都验证过TD时,它可以将C的款项按要求转入M的账户并开出发票,从而完成支付。

④协议分析

在以上的初始假设下,我们做出以下推导:由1)和P3及K5得:M CanProve(C Says TD);由2)和P2、P3及K5得:B CanProve (M Says TD),B CanProve (C Says TD);这样B就可以实施转账并开出发票。由3)和P1及K5得:M CanProve (B Says(RD,H(TD));再由P4、K6即得:M CanProve(RD,H(TD));

由4)和P1及K5得:M CanProve(B Says(RD,H(TD)));再由P4、K6即得:C CanProve(RD,H(TD))。这样我们就从Kailar逻辑的角度“证明”了STPP电子支付协议是安全的,即STPP可以达到预定的电子支付目标。

四、结束语

本文尝试吸取现存的电子支付协议的优点来实现新的安全有效的电子支付协议。与SET注重安全性相比,STTP牺牲了少许安全性来达到较好的可用性和扩展性。即使这样,实验表明STTP的安全性仍值得信赖。

本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。

上一篇:电子商务企业的战略选择 下一篇:我国电子商务立法的几点问题浅析