陳善學(xué),姚小鳳,周淑賢,李方偉
(重慶郵電大學(xué)通信學(xué)院 重慶 400065)
移動(dòng)電子商務(wù)融合了Internet、無(wú)線通信技術(shù)和電子商務(wù),是指通過(guò)手機(jī)、個(gè)人數(shù)字助理 (personal digital assistant,PDA)和筆記本電腦等移動(dòng)終端設(shè)備進(jìn)行的商務(wù)活動(dòng)。結(jié)合移動(dòng)通信和移動(dòng)電子商務(wù)中支付的特點(diǎn),微支付在移動(dòng)計(jì)費(fèi)中的應(yīng)用也顯得越來(lái)越重要,這也是微支付的一個(gè)重要發(fā)展方向和研究熱點(diǎn)。根據(jù)微支付和移動(dòng)通信的特點(diǎn),研究基于微支付的移動(dòng)通信支付和認(rèn)證模型是目前微支付發(fā)展中最有潛力的方向之一,也是微支付應(yīng)用的熱點(diǎn),日本的DoMoCo公司提出的i-mode是微支付應(yīng)用于無(wú)線通信最為成功的典范。
微支付中的電子貨幣可以由票據(jù)(scirp)或Hash鏈等組成,也可以由用戶M產(chǎn)生,或由中間人B和商家V產(chǎn)生。由M或B代理產(chǎn)生的微電子貨幣一般與特定的M有關(guān),如Millicent等;B作為可受信任機(jī)構(gòu),可以獨(dú)立產(chǎn)生電子貨幣,它一般與特定的M類型無(wú)關(guān),如MicroMint等;另外,V也可以根據(jù)B的授權(quán)(如通過(guò)頒發(fā)數(shù)字證書(shū))來(lái)獨(dú)立制造貨幣,它一般是基于 Hash鏈形式的,可以與特定的M有關(guān),也可以無(wú)關(guān),并具有靈活的擴(kuò)展形式。下面簡(jiǎn)要地介紹3種常見(jiàn)的微支付協(xié)議[1~4]。
(1)Millicent
一種小額電子商務(wù)交易的Internet支付系統(tǒng),在Web能夠使用電子錢包,可稱為便條(script)的電子令牌。script被安全地保存在用戶的PC硬盤上,并用個(gè)人標(biāo)識(shí)號(hào)或口令對(duì)其加以保護(hù)。擴(kuò)展的MilliCent協(xié)議可在移動(dòng)代理環(huán)境下實(shí)現(xiàn)微支付[5]。
(2)MicroMint
一種典型的微支付協(xié)議。它使用中間人來(lái)產(chǎn)生電子貨幣,產(chǎn)生的電子貨幣沒(méi)有使用簽名機(jī)制,這會(huì)很容易被攻擊者驗(yàn)證,但它卻不容易偽造。它沒(méi)有采用公鑰技術(shù),安全性較低,但效率較高,適合于低額度電子支付。
(3)PayWord
基于信用的一種微支付協(xié)議。首先用戶M在中間人(broker)處建立賬戶,中間人給用戶分發(fā)PayWord數(shù)字證書(shū),其中包括中間人名、用戶名、IP地址、公鑰、證書(shū)的有效期限及其他一些信息。
微支付面額小而其效率要求高,完全實(shí)現(xiàn)其公平性是不可行的。當(dāng)交易量小時(shí),微支付的公平性研究也沒(méi)有多大的必要性。但當(dāng)微支付的交易數(shù)量特別大時(shí),如何采用有效的措施來(lái)實(shí)現(xiàn)微支付的公平性將顯得尤為重要。采用一些新的公鑰技術(shù),如ECC算法來(lái)替代現(xiàn)有的RSA算法,可以在充分利用公鑰技術(shù)特性基礎(chǔ)上,有效提高系統(tǒng)效率,這也是微支付發(fā)展中一個(gè)很引人關(guān)注的話題。
無(wú)線移動(dòng)通信網(wǎng)絡(luò)的帶寬有限,且相對(duì)有線網(wǎng)絡(luò)而言,誤碼率較高,所以協(xié)議中盡量減少交換消息的長(zhǎng)度和輪數(shù)。在移動(dòng)網(wǎng)絡(luò)環(huán)境中,移動(dòng)用戶使用多種無(wú)線通信協(xié)議通過(guò)多個(gè)移動(dòng)接入網(wǎng)絡(luò)進(jìn)行連接。在現(xiàn)實(shí)中存在許多彼此獨(dú)立的公共和專用移動(dòng)服務(wù)網(wǎng)絡(luò)。這些網(wǎng)絡(luò)有的是移動(dòng)的,有的是固定的,也存在大量的增值服務(wù)提供商(VASP)提供增值服務(wù)。在這種環(huán)境下用戶可能處于多個(gè)移動(dòng)網(wǎng)絡(luò)區(qū)域內(nèi),可以選擇滿足要求的服務(wù)提供商。
本文在介紹微支付的基本機(jī)制和模型的基礎(chǔ)上,研究基于共享密鑰機(jī)制的微支付系統(tǒng)[6],并結(jié)合移動(dòng)網(wǎng)絡(luò)環(huán)境和已有微支付協(xié)議如一次性簽名[7]、移動(dòng)通信認(rèn)證[8]等的優(yōu)缺點(diǎn),在入網(wǎng)認(rèn)證機(jī)制[9,10]中利用移動(dòng)網(wǎng)認(rèn)證的隨機(jī)數(shù)和用戶SIM卡的私鑰產(chǎn)生密鑰結(jié)合ECC和AES產(chǎn)生一次性簽名。該簽名不可偽造,不可重復(fù)使用,且安全性高。所提出的微支付方案在交易的重要信息中都會(huì)嵌入該簽名,防止用戶和商家之間的欺騙。用戶在瀏覽網(wǎng)站或交易時(shí)都是利用網(wǎng)站提供的臨時(shí)用戶標(biāo)識(shí)進(jìn)行交易,具有匿名性。用戶的消費(fèi)歷史不可追蹤。
有限域 GF(q)上的橢圓曲線:令p>3是一個(gè)素?cái)?shù),a,b∈GF(q)滿足 4a3+27b2≠0,由參數(shù) a,b 定義 GF(q)上一個(gè)橢圓曲線方程y2=x3+ax+b(mod q),定義曲線參數(shù)T=(q,a,b,G,n,h),其中G為基點(diǎn),n為基點(diǎn)G的階,h為曲線點(diǎn)的數(shù)量#E(Fq)除以n的商。假定在橢圓曲線E上有兩點(diǎn)P、Q,且 P≠Q(mào),滿足 Q=kP,可以看出,給定 k 和 P,計(jì)算Q相對(duì)容易;而給定Q和P,計(jì)算k=logqQ相對(duì)困難。這就是橢圓曲線離散對(duì)數(shù)問(wèn)題[8]。
就橢圓曲線公鑰密碼體制而言,各種橢圓曲線公鑰密碼體制的安全性都與相應(yīng)的橢圓曲線離散對(duì)數(shù)問(wèn)題的求解困難性等價(jià)。對(duì)于有理點(diǎn)數(shù)有大素?cái)?shù)因子的橢圓離散對(duì)數(shù)問(wèn)題,目前還沒(méi)有有效的攻擊方法,因此采用橢圓曲線加密可以提供足夠的安全性。
AES(advanced encryption standard,高級(jí)加密標(biāo)準(zhǔn)):它是一種標(biāo)準(zhǔn)的對(duì)稱加密算法,是一個(gè)迭代、對(duì)稱密鑰分組的密碼,可以使用128、192和256 bit密鑰,并且用128 bit(16 byte)分組加密和解密數(shù)據(jù)。與公共密鑰密碼使用密鑰對(duì)不同,對(duì)稱密鑰密碼使用相同的密鑰加密和解密數(shù)據(jù)。通過(guò)分組密碼返回的加密數(shù)據(jù)位數(shù)與輸入數(shù)據(jù)相同。迭代加密使用一個(gè)循環(huán)結(jié)構(gòu),在該循環(huán)中重復(fù)置換(permutation)和替換(substitution)輸入數(shù)據(jù),速度快、安全級(jí)別高且算法應(yīng)易于各種硬件和軟件實(shí)現(xiàn)。
IDmi、IDv、IDb分別是用戶 MS的臨時(shí)交易標(biāo)識(shí)、商家 V的注冊(cè)標(biāo)識(shí)、TTP網(wǎng)站的標(biāo)識(shí);
Kbs、Kmv分別是 TTP與 SP,MS與商家 V 的 128 bit的共享AES密鑰;
Kc是用戶MS中SIM卡計(jì)算用于短期使用生成AES鏈的128 bit AES密鑰;
Expire是AES鏈的有效期;
Tm和Tv分別表示用戶MS和商家V的時(shí)間戳;
E(·)表示用 ECC 加密;
H(·)表示具有強(qiáng)抗碰撞沖突的單向散列函數(shù)Hash加密。
全文涉及的有關(guān)符號(hào)如下:∈表示從某一集合中隨機(jī)選擇;‖表示串連接;p、q為充分大的素?cái)?shù)。
3G移動(dòng)微支付模型除了要滿足安全性、防欺詐性、不可否認(rèn)性、公平性、匿名性外,還應(yīng)滿足可伸縮性和通用性。另外,最重要的是贏取廣大的用戶喜好和消費(fèi)習(xí)慣。其基本模型如圖1所示,協(xié)議涉及4方。
(1)移動(dòng)用戶(MS):擁有3G功能手機(jī)終端的用戶。手機(jī)用戶規(guī)模越來(lái)越大,足以涵蓋網(wǎng)上交易用戶。
(2)移動(dòng)運(yùn)營(yíng)商服務(wù)平臺(tái)(SP):負(fù)責(zé)認(rèn)證用戶的合法性,移動(dòng)通信運(yùn)營(yíng)商運(yùn)用自己的支付平臺(tái)支持微支付交易。移動(dòng)用戶通過(guò)手機(jī)發(fā)出指令完成交易,支付交易金額包含在手機(jī)費(fèi)中。且與TTP進(jìn)行支付交易核對(duì)。
圖1 3G移動(dòng)微支付基本模型
(3)受信任的第三方(TTP):提供公正仲裁等服務(wù),為交易雙方提供安全交易機(jī)制,促進(jìn)交易的生成。并與銀行進(jìn)行現(xiàn)金兌換。
(4)可信的金融機(jī)構(gòu)(bank):管理TTP的賬號(hào),與 TTP進(jìn)行現(xiàn)金兌換。
3.2.1 3G終端用戶(MS)入網(wǎng)認(rèn)證過(guò)程
3G網(wǎng)絡(luò)接入安全機(jī)制主要有3種:臨時(shí)身份識(shí)別、永久身份識(shí)別、認(rèn)證和密鑰協(xié)商(AKA)。
3G用戶入網(wǎng)認(rèn)證改進(jìn)后的過(guò)程如圖2所示。對(duì)改進(jìn)后的整個(gè)驗(yàn)證過(guò)程采用公鑰密碼體制進(jìn)行加密,原f5和f5*產(chǎn)生的匿名密鑰算法可以去掉。同時(shí)對(duì)網(wǎng)絡(luò)端認(rèn)證已采用HLR數(shù)字簽名,可以減掉一個(gè)異或器和f1,f1*算法。
3.2.2 用戶AES簽名產(chǎn)生過(guò)程
首先,用戶到營(yíng)業(yè)廳辦理入網(wǎng)手續(xù),用戶隨機(jī)選取一個(gè)隨機(jī)數(shù)r∈[1,n-1],作為移動(dòng)用戶MS的私鑰,3G移動(dòng)服務(wù)平臺(tái)產(chǎn)生私鑰K1,K2,計(jì)算相應(yīng)的公鑰P=rG,P1=K1G,P2=K2G,移動(dòng)用戶入網(wǎng)認(rèn)證成功后得到的隨機(jī)數(shù)RAND(R)和Ki(手機(jī)的SIM卡中存儲(chǔ)著用戶的國(guó)際移動(dòng)用戶標(biāo)識(shí)(IMSI)和用戶的私鑰 K,認(rèn)證中心根據(jù) IMSI找到用戶的Ki)用算法產(chǎn)生 Kc∈GF(q),然后計(jì)算 K′=KcP1+PP2,K′≠0,用K′作為會(huì)話密鑰,用AES算法反復(fù)加密,得到一個(gè)AES鏈:
此鏈在每次交易時(shí)一次性遞增使用,用戶保存當(dāng)前的i、Ri和該鏈的有效期Expire。使用該鏈做為移動(dòng)用戶每次購(gòu)買商品的一次性簽名。
3.2.3 商家注冊(cè)網(wǎng)站過(guò)程
由受信任的TTP建立網(wǎng)站,提供給商家使用,商家可以租借或購(gòu)買的形式使用該網(wǎng)站,商家只能裝飾網(wǎng)站內(nèi)容不能更改鏈接地址、商家提交銷售的商品類、商家簽名Signv、商家與用戶交易時(shí)的共享密鑰Kmv、商店名稱、商家IP地址、使用有效期等資料。TTP核對(duì)資料后發(fā)放注冊(cè)號(hào)IDv、有效期 T。
圖2 用戶MS入網(wǎng)認(rèn)證過(guò)程
(1)移動(dòng)用戶MS登錄3G網(wǎng)絡(luò),進(jìn)入TTP的網(wǎng)站后自動(dòng)生成臨時(shí)用戶標(biāo)識(shí)IDm,瀏覽商品并選擇購(gòu)買。商家V發(fā)送購(gòu)買信息給用戶MS確認(rèn):
(2)用戶MS收到后,用Hash運(yùn)算確認(rèn)購(gòu)買消息無(wú)誤后點(diǎn)擊網(wǎng)站的移動(dòng)運(yùn)營(yíng)商服務(wù)平臺(tái)(SP)連接:
(3)移動(dòng)運(yùn)營(yíng)商服務(wù)平臺(tái)(SP)檢查用戶的合法性后查詢用戶手機(jī)余額是否大于消費(fèi)額p,如小于則發(fā)送“余額不足,請(qǐng)充值”的消息給用戶MS,如大于則發(fā)送“允許扣費(fèi)”的消息給用戶,移動(dòng)運(yùn)營(yíng)商服務(wù)平臺(tái)(SP)把用戶簽名過(guò)的信息存儲(chǔ)起來(lái)(用戶離線時(shí),可用此簽過(guò)名的信息利用SMS與商家協(xié)商)并同時(shí)發(fā)送給TTP。
(4)用戶收到允許消費(fèi)的信息后,把商家發(fā)送的信息經(jīng)過(guò)用戶MS簽名確認(rèn)發(fā)送回給商家:
(5)商家V把用戶MS簽名過(guò)的貨單信息發(fā)送給TTP進(jìn)行內(nèi)部操作,TTP對(duì)信息確認(rèn)登記:
(6)TTP核對(duì)價(jià)格和簽名是否一樣,如一樣發(fā)送可發(fā)貨信息給商家。
(7)用戶收到商品后,登錄到TTP網(wǎng)站對(duì)商家進(jìn)行評(píng)價(jià)和再次確認(rèn):
(8)TTP收到用戶的再次確認(rèn)信息后,發(fā)送給SP,SP發(fā)送用戶消費(fèi)后余額信息給用戶MS。
(9)TTP一天或一段時(shí)期后,但不能超過(guò)用戶簽名的有效期,到銀行換取現(xiàn)金后發(fā)送給商家。
安全性是網(wǎng)上交易面臨的最大挑戰(zhàn)。任何一種方案取得成功的先決條件就是實(shí)現(xiàn)高水平的安全性。此方案的安全性分析如下。
(1)要篡改或竊取用戶MS的一次性簽名必須要知道Kc和(i,Ri),Kc是由 3G移動(dòng)終端用戶MS入網(wǎng)成功后收到歸屬位置寄存器 (HLR)發(fā)送的RAND和用戶的Ki經(jīng)過(guò)A8算法或其他更有效的算法得到,如果用戶SIM卡被其他人使用,由于不知道用戶的私鑰,其他人無(wú)法偽造簽名,具有不可否認(rèn)性,比參考文獻(xiàn)[7]增加了破解的難度,即前向和后向都具有較高的安全性。
(2)消費(fèi)無(wú)過(guò)度或重復(fù),每次消費(fèi)用戶都用AES一次性簽名,它是遞增使用的,并且不接受小于當(dāng)前有效序號(hào)的簽名,該算法機(jī)制用戶的消費(fèi)蹤跡,保證用戶不被跟蹤,且具有匿名性。
(3)每次有新的交易時(shí),用戶MS都是使用 TTP生成的臨時(shí)標(biāo)識(shí)IDm,商家無(wú)法知道用戶MS之前是否來(lái)消費(fèi)過(guò),具有可便性、靈活性。
(4)商家無(wú)法篡改或否認(rèn)消費(fèi),購(gòu)買信息有用戶MS確認(rèn)后的簽名,商家發(fā)貨時(shí)經(jīng)過(guò)TTP同意,TTP保留商家簽過(guò)名的貨單,不可否認(rèn)和篡改。
(5)用戶再次確認(rèn)后,用戶的資金才會(huì)真正被扣除,第一次的確認(rèn),資金會(huì)被SP冷藏起來(lái),再次確認(rèn)后才會(huì)被解凍,消費(fèi)掉。如果用戶無(wú)第二次確認(rèn),SP會(huì)在簽名有效期內(nèi)發(fā)送信息詢問(wèn)用戶和TTP,如無(wú)特殊情況,SP發(fā)送成功交易給TTP,不存在用戶MS重復(fù)支付;且每次消費(fèi)都會(huì)詢問(wèn)SP,因此可以有效地防止用戶MS的惡意消費(fèi)。
(6)用戶對(duì)商家進(jìn)行評(píng)價(jià),有利于TTP對(duì)商家的管理,只要貨物如實(shí)所訴,商家不用擔(dān)心無(wú)法收取現(xiàn)金。
協(xié)議的安全性比較結(jié)果見(jiàn)表1,在提出的方案中手機(jī)用戶進(jìn)行微支付的安全性得到很好的保障。
表1 小額支付和微支付的安全性比較[9]
該方案提出在3G無(wú)線網(wǎng)絡(luò)環(huán)境下實(shí)行微支付協(xié)議,用戶身份認(rèn)證得到肯定[10],保證傳輸時(shí)數(shù)據(jù)的機(jī)密性和信息的完整性;提出交易過(guò)程中利用入網(wǎng)認(rèn)證得到的隨機(jī)數(shù)和用戶SIM卡里的私鑰結(jié)合參考文獻(xiàn)[7]生成一次性簽名,該方法是M與B可以按挑戰(zhàn)響應(yīng)方式相互認(rèn)證并得到會(huì)話密鑰,因此本方法安全性更高,且可保證交易信息的可認(rèn)證性(可鑒別性)和防抵賴性;商家存儲(chǔ)用戶交易信息當(dāng)中保留了用戶的臨時(shí)標(biāo)識(shí)和簽名,保證用戶身份隱密和不可抵賴性比參考文獻(xiàn)[9]更實(shí)用。兌換現(xiàn)金不用商家直接參與,由TTP向銀行兌換,減少兌換人的數(shù)量,避免商家取不到現(xiàn)金。
1 Manasse M.The millicent protocols for electronic commerce.In:Proceedings of the 1stUSENIX Workshop on Electronic Commerce,New York,USA,July,1995
2 Rivest R,Shamir A,PayWord,et al.MicroMint:two simple micropayment schemes.In:Proceedings of the 4th Security Protocols International Workshop (Security Protocols),LNCS1189.Springer-Verlag,Berlin,1996
3 Peirce M. Multi-party electronic payments for mobile communications.Dublin:Computer Science University of Dublin,2000
4 姬東耀,王育民.基于PayWord的小額電子支付協(xié)議.電子學(xué)報(bào),2002,30(2)
5 于寶東,金連甫,陳平.移動(dòng)代理環(huán)境下實(shí)現(xiàn)微支付系統(tǒng)——擴(kuò)展MilliCent協(xié)議.計(jì)算機(jī)工程與應(yīng)用,2004(26)
6 胡偉,鐘樂(lè)海.基于共享密鑰機(jī)制的微支付系統(tǒng)的研究.計(jì)算機(jī)時(shí)代,2004(7)
7 崔巖,劉永杰,周玉潔.一種適用于移動(dòng)電子商務(wù)的微支付方案.計(jì)算機(jī)工程與應(yīng)用,2005(35)
8 鄧方民,許春香,張娟.基于ECC的移動(dòng)通信認(rèn)證和密鑰協(xié)商協(xié)議.計(jì)算機(jī)應(yīng)用與軟件,2006,23(2)
9 Mahmoud R H,Elahe S.A secure m-payment protocol for mobile devices.IEEE CCECE/CCGEI,2006(5):294~297
10 劉瑩,陸松年,楊樹(shù)堂.基于混合密碼的增強(qiáng)型3G終端入網(wǎng)認(rèn)證方案.計(jì)算機(jī)工程,2008,34(20):149~153