周 璇, 汪學明
(貴州大學計算機科學與信息學院,貴州貴陽550025)
由于無線通信和移動網(wǎng)絡的快速發(fā)展,越來越多的人們開始使用手機或 PDA上網(wǎng)。大量商家開始為這一群體提供服務,如瀏覽網(wǎng)站、下載音樂等。這些服務并不完全免費,需要收取額外的費用。為滿足交易的可靠性、公平性和安全性的需求,需要安全支付協(xié)議。在實際交易過程中,由于支付和結算過程的交易額普遍較低,且無線網(wǎng)帶寬和傳輸效率較低,因此支付協(xié)議首先需要解決小交易額的支付和結算問題,另外支付協(xié)議的設計不能太復雜,必須保證在現(xiàn)有無線網(wǎng)帶寬和傳輸效率下協(xié)議能正常執(zhí)行。目前的無線上網(wǎng)設備運算速度并不夠快,為此支付協(xié)議的運算量不能太大,至少需低于無線上網(wǎng)設備能承受的最大運算量。
1996年RonaldL.Rivest和AdiShamir[1]提出了Payword和MicroMint兩種微支付協(xié)議,其中Payword微支付協(xié)議備受關注。Payword微支付協(xié)議的突出特點是注重效率,它是基于可信任的雙方之間的交易。但正是它注重效率的原因,使得其本身存在很多的不足,如不滿足不可否認性。2000年L.Buttyan對Payword微支付協(xié)議進行了擴展,但擴展的Payword微支付協(xié)議不能達到完全的公平性。2008年汪楊琴對Payword協(xié)議進行了改進,通過預支付方法達到了一定的公平性[2]。2009年孟健等人針對交易頻繁的移動場景,對Payowrd進行了改進了,使用可自更新的Hash鏈機制,提高了效率,最大程度實現(xiàn)了公平交換[3]。2009年汪學明和崔楠對通信限制場景下安全移動支付協(xié)議進行了研究[4]。真正的公平性需要Payword微支付協(xié)議滿足不可否認性[7],本文將從不可否認性出發(fā)對Payword微支付協(xié)議進行改進。Syverson和Oorseho提出的SVO邏輯是一個實用的模態(tài)邏輯,它具有很強的可擴展性,通過擴展SVO邏輯可分析各種不同類型的安全協(xié)議[5]。SVO邏輯從產(chǎn)生至今廣泛運用于各種電子商務協(xié)議的分析與驗證,取得很好的效果。移動微支付協(xié)議屬于電子商務協(xié)議,我們將運用SVO邏輯分析移動微支付協(xié)議。
本文對Payword協(xié)議的交互過程進行分析,指出Payword協(xié)議在協(xié)議交互過程中不滿足不可否認性。對Payword協(xié)議進行改進,并對SVO邏輯進行擴展。用擴展后的SVO邏輯對改進的Payword協(xié)議進行形式化分析。
Payword協(xié)議的參與者有三方:用戶(U),商家(V),中介(B)。該協(xié)議使用非對稱加密實現(xiàn)數(shù)字簽名,保證用戶信息的可靠性和保密性。一般使用RSA公鑰加密算法。協(xié)議在支付和結算時,使用哈希函數(shù)保證交易金額不可偽造,同時也保證運算的快速和高效以及結果的安全性[9]。Payword協(xié)議的交互過程如圖1所示。

圖1 Payword協(xié)議交互過程
Payword協(xié)議交互過程說明:①用戶提交個人信息給中介;②中介反饋用戶的簽名信息;③用戶向商家發(fā)送簽名信息和交易申請以及金額;④商家提供服務;⑤商家發(fā)送結算信息給中介。Payword協(xié)議交互過程中,過程③是用戶向商家提交支付,當商家收到支付信息后并未反饋任何信息,商家在收到支付后可以未收到支付信息為由欺騙用戶,不提供服務信息給用戶;過程④中商家為用戶提供完服務后,當用戶收到服務信息后也并未向商家發(fā)送已接收服務確認信息,用戶可以未收到服務信息為由,要求商家繼續(xù)為其提供服務,從而達到欺騙商家的目的。綜上所述,過程③、④的交互過程不能滿足不可否認性。因此,有必要對Payword協(xié)議進行改進使其滿足不可否認性。
Payword微支付協(xié)議因不能滿足不可否認性,當產(chǎn)生糾紛時,用戶沒有證據(jù)證明已付費,商家也沒有證據(jù)證明已提供服務,在雙方都無證據(jù)的情況下,糾紛無法得到公平的解決。改進Payword微支付協(xié)議的重點在于如何使雙方在產(chǎn)生糾紛時,兩方中至少有一方可提供證據(jù)。因此協(xié)議的改進將圍繞這一點進行。改進的協(xié)議如下:
(1)U→B((credit-card-number),{credit-card-number}SKU,{PKU,V}PKB)
(2)B→U({B,NU,PKU,E,IU}SKB,{V,PKV}SKB)
(3)U→V(CU,{V,W0,D,IM}SKU)
(4)U→V((Gi,Wi,It),{{Gi,Wi,It}SKU}PKV)
(5)V→U({Wi,It}SKV,{{services}SKV}PKU)
(6)U→V({It,services acknowledge}SKU)
(7)V→B(M,{Plast}SKV,CU,{It,services acknowledge}SKU)
改進的Payword微支付協(xié)議與原Payword微支付協(xié)議有同樣的參與者:用戶(U),商家(V)以及中介(B)。原Payword微支付協(xié)議為用戶(U)和中介(B)提供了安全的傳輸通道,對于無線網(wǎng),提供安全的傳輸通道將花費一定的開銷,使得移動電子支付成本較高,不利于移動電子支付的快速發(fā)展。改進的Payoword微支付協(xié)議并不為用戶(U)和中介(B)的通信提供安全傳輸通道。由于用戶(U)與商家(V)進行交易之前需要中介(B)為用戶(U)發(fā)放身份認證證書,用戶首先將自己的信用卡號(creditcard-number)進行哈希運算得到 (credit-card-number)(是強單向哈稀函數(shù))。通過對信用卡號進行哈希運算可降低了無線網(wǎng)傳輸中的信息量,同時為中介(B)驗證信用卡號正確性提供依據(jù);之后將信用卡號(credit-card-number)用自己的私鑰SKU加密得到{credit-card-number}SKU,保證信用卡號的機密性,并用中介(B)的公鑰PKB加密信息(PKU,V),其中PKU為用戶公鑰,V為商家信息;最后用戶發(fā)送 (credit-card-number),{credit-card-number}SKU和{PKU,V}PKB給中介(B),此過程為改進協(xié)議中的過程(1)。協(xié)議過程(1)結束后中介(B)將為信用卡號credit-card-number建立賬戶編號NU,編號NU作為用戶U的代名,保證用戶交易的匿名性。同時中介(B)生成用戶(U)的證書CU={B,NU,PKU,E,IU}SKB,并用中介(B)的私鑰加密商家信息V和其公鑰(PKV),隨后完成協(xié)議過程 (2)。其中E代表這次交易的有效期;IU代表附加信息。用戶接收中介(B)發(fā)送的信息后,驗證商家信息V是否正確,若不正確,用戶(U)將再次發(fā)送{PKU,V}PKB給中介(B)。
協(xié)議過程(1)、(2)結束后,用戶(U)與商家(V)進行通信,若用戶(U)第一次與商家(V)通信,則需執(zhí)行協(xié)議過程(3),用戶(U)隨機選取數(shù)Wn,生成一條用于支付的雜湊鏈W0,W1,……Wn,其中Wi-1= (Wi)[10]。在交易前用戶(B)首先發(fā)送用戶證書CU和承諾M({V,W0,D,IM}SKU)給商家(V),商家(V)有此承諾才會與用戶(B)進行交易。承諾M中的D為當前日期,以此抵制重放功擊,IM為附加信息。交易過程中,為保證商品信息(Gi)和費用P的保密性和正確性,用戶(U)發(fā)送商品信息(Gi)、費用P(P=(Wi,It))的哈希值 (Gi,P)以及費用Gi和P的簽名加密({Gi,P}SKU)PKV給商家(V),It為當前日期信息以保證費用P的新鮮性;隨后商家反饋費用P的簽名{P}SKV,以及商家(V)提供的服務(services),services需用商家(V)的私鑰 SKV和用戶(U)的公鑰 PKU進行簽名加密,以保證services的保密性。P的簽名{P}SKV作為用戶(U)已支付的證據(jù);當用戶(U)收到(services)后,用戶(U)發(fā)送給商家(V)服務確認(services acknowledge)和時間信息It,并用用戶(U)的私鑰SKU進行簽名,{It,services acknowledge}SKU作為商家已發(fā)送服務的證據(jù)。服務確認信息中的It可保證服務確認信息的新鮮性,因為It為交易當前時間,倘若沒有It,商家(V)可使用以往的服務確認信息欺騙中介(B)。經(jīng)過交易過程,雙方都擁有各自的證據(jù),糾紛也可得到公平處理。若用戶(U)之前已和商家(V)交易過,則只需執(zhí)行協(xié)議過程(4)至(6)。
一般商家(V)向中介(B)兌換金額的周期以一周為兌換期限,抑或更長的時間,這個時間由中介(B)來確定。當商家(V)向中介(B)兌換金額時,商家(V)發(fā)送用戶(U)的承諾信息M、商家最后收到的費用PLast的簽名{Plast}SKV、用戶(U)的身份認證證書CU以及用戶(U)發(fā)送給商家的服務確認信息{It,services acknowledge}SKU。其中,承諾信息M中包含支付鏈的根。中介(B)通過信息CU判斷使用用戶(U)的公鑰PKU來解密承諾信息M,通過解密獲得相同的CU,以此判斷為用戶(U)發(fā)送的服務確認。最后中介(B)以信息Plast來確定用戶(U)的消費,將消費的金額轉移到商家(V)的賬戶中。但若結算金額很少時,中介(B)不進行轉賬,中介(B)將會為用戶(U)建立一個消費記錄,記錄中包含用戶的信息、交易商家的信息、消費憑證和消費額,這一操作可在離線狀態(tài)完成。當中介(B)再次接收PLast后,驗證若為用戶(U)的消費,則將其累加到消費記錄中,當消費值達到一定數(shù)量時再進行轉賬。
可見改進的Payword微支付協(xié)議能保證完整執(zhí)行協(xié)議后用戶(U)和商家(B)均擁有各自的證據(jù),在這種情況下,雙方的糾紛可以得到公平處理。但如果協(xié)議未能執(zhí)行結束,則可分兩種情況:
(1)商家(V)收到用戶(U)付費后,未提供任何服務,同樣商家(V)將收不到用戶(U)的確認,不能與中介(B)進行兌換,商家得不到任何好處;
(2)商家(V)提供了服務,卻遲遲收不到用戶(U)的確認,商家(V)可將此情況告知中介(B),并發(fā)送{{Gi,Wi,It}SKU}PKV,{{services}SKV}PKU給中介(B),中介(B)判斷此服務是否正確。當服務正確時中介(B)轉發(fā)服務給用戶(U),用戶(U)若仍不發(fā)送確認給中介(B),則中介判定用戶的付費生效,商家將獲得應得金額。用戶若發(fā)送確認,將其確認轉發(fā)給商家。
由于 W0,W1,…,Wn-1,Wn為 hash 鏈,其中 Wj-1= (Wj),只有擁有W0和Wn的協(xié)議參與者才能生成hash鏈W0,W1,…,Wn-1,但并不知道生成的hash鏈中是否包含Wi,若擁有Wn的協(xié)議參與者也擁有Wi,說明該協(xié)議參與者生成的hash鏈中有Wi。在改進的Payword微支付協(xié)議參與者中,若有某一參與者P擁有(Wi,It)、W0和Wn,另一參與者Q接收到(Wi,It),說明P生成的hash鏈中有Wi,只有P才能生成Wi。為此Q接收到(Wi,It),可確定Q接收到P所發(fā)送的(Wi,It)。另外,若協(xié)議的參與者P擁有信息X,協(xié)議參與者Q曾發(fā)送過信息X,則可確定P曾接收了Q發(fā)送的信息X。為了分析改進的Payword協(xié)議,需增加以下兩條SVO邏輯的公理

(1)協(xié)議分析目標

(2)初始假設集合


(3)協(xié)議分析
主體U
由 PU7,PU8,A1+MP 可得

由式 S1,PU1,PU2,A4,Nec,A1+MP 可得

由 PU1,PU3,PU6,A4,Nec,A1+MP,A14可得

由式 S2,PU5,A22,Nec,A1+MP 可得

主體V
由 PV6,PV9,A1+MP 可得

由式 S3,PV1,PV2,A4,Nec,A1+MP 可得

由式 S4,A14,Nec,A1+MP,A0可得

由 PV7,PV10,A1+MP 可得

由式 S5,S6,PV3,PV4,A3,A7,A14,A21,Nec,A1+MP 可得

由 PV1,PV8,PV11,A1+MP 可得

由式 S7,PV5,A22,Nec,A1+MP 可得

主體B
由 PB1,PB4,PB5,A1+MP 可得

由 PB2,PB4,PB6,A1+MP 可得

由式 S8,G5,A22可得

由 PB3,PB7,A1+MP,A0可得

分析結果表明,改進后的Payword協(xié)議滿足不可否認性。
微支付協(xié)議Payword不滿足不可否認性,因此對Payword微支付協(xié)議進行了改進。為驗證改進后的Payword微支付協(xié)議是否滿足不可否認性,我們對SVO邏輯進行了擴展,并用擴展的SVO邏輯對改進的Payword微支付協(xié)議進行形式化分析證明。分析結果表明,改進后的微支付協(xié)議滿足不可否認性。下一步將對其它移動微支付協(xié)議進行深入研究,提出更加切實可行的移動微支付協(xié)議設計方案。
[1]Mona Hosseinkhani,Ebrahim Tarameshloo,Mehdi Shajari.AMVPayword:Secure and efficient anonymous payword-based micropayment scheme[C].International Conference on Computational Intelligence and Security,2010:551-555.
[2]WANG Yang-qin.Secure and efficient mobile micropayment protocol[J].Computer Engineering,2008,34(1):158-159.
[3]MENG Jian,YANG Yang.Self-renewal hash chains micro-payment protocol based on payword[J].Computer Engineering,2009,35(3):63-65.
[4]崔楠,汪學明.通信限制場景下的安全移動支付協(xié)議研究[J].計算機工程與設計,2010,31(9):1950-1953.
[5]卿斯?jié)h.安全協(xié)議[M].北京:清華大學出版社,2005:133-149.
[6]Haller N,Metz C,Nesser P,et al.RFC 2289,A one-time password system[S].2005.
[7]Yang C N,Lin T,Chen T S.Enhanced fair micropayment scheme based on hash chain to avoid merchant collusion[C].Proceedings of 9th IEEE International Symposium on Consumer Electronics,2005:39-42.
[8]Hwang M S,Sung P C.A study of micro-payment based on oneway hash chain[J].International Journal of Network Security,2006,2(2):81-90.
[9]WU Chia-chi,CHANG Chin-chen,LIN Iuon-chang.An authenticated payword scheme without public key cryptosystems[J].International Journal of Innovative Computing,Information and Control,2009,5(9):2881-2891.
[10]Praneetha R Bayyapu,Manik Lal Das.An improved and efficient micro-payment scheme[J].Journal of Theoretical and Applied Electronic Commerce Research,2009,4(1):91-100.
[11]YIN Hu,ZHANG Xiangjun,CHEN Kefei.A new micropayment protocol for wireless network[J].Computer Engineering,2005,31(12):221-222.
[12]何文鑫,呂玉琴,趙鑫,等.基于Hash鏈的微支付協(xié)議匿名性研究[J].中國電子科學研究院學報,2008,3(6):599-603.
[13]姜楠,楊日璟,林正奎,等.基于混沌雙Hash鏈的移動微支付協(xié)議[J].吉林大學學報(工學版),2010,40(2):581-585.
[14]劉恩賢,呂磊,姜輝.移動商務中一種擴展的微支付協(xié)議研究[J].青島大學學報(工程技術版),2009,24(1):75-78.
[15]Baek J,Steinfeld R,Zheng Y.Formal proofs for the security of signcryption[J].Journal of Cryptology,2007,20(2):203-235.