李 賽,李曉宇
(鄭州大學 信息工程學院,鄭州 450001)
(*通信作者電子郵箱iexyli@zzu.edu.cn)
基于加密短信驗證碼的移動安全支付解決方案
李 賽,李曉宇*
(鄭州大學 信息工程學院,鄭州 450001)
(*通信作者電子郵箱iexyli@zzu.edu.cn)
針對移動支付過程中支付驗證碼容易泄露的問題,提出了基于加密短信息驗證碼的雙因素移動支付系統(tǒng)方案。該方案基于公開密鑰系統(tǒng),使用公鑰基礎設施/認證機構(PKI/CA)的認證方法進行服務器與客戶端的在線安全認證,并且利用客戶在服務器上注冊的用戶名、密碼和加密的交易驗證短信來確保即使驗證碼密文泄漏,攻擊者也無法獲取驗證碼,從而杜絕了驗證碼泄漏造成的失竊風險。仿真結果表明,加密驗證碼方案在使用短信接口發(fā)送給用戶時,系統(tǒng)的反應時間與未加密驗證碼方案的反應時間差別并不明顯,而且增長趨勢保持一致,均隨著用戶訪問量的增加呈線性增長,能夠兼顧系統(tǒng)的安全性和有效性。
移動支付;短信驗證碼;雙因素驗證;公鑰基礎設施/認證機構;加密算法
隨著互聯(lián)網的普及和電子商務的興起,金融支付手段已成為制約經濟發(fā)展的瓶頸,移動支付在這樣的背景下應運而生。近年來,移動互聯(lián)網為各行各業(yè)帶來了巨大的革新機遇[1],根據艾瑞預測,2018年移動支付的市場交易規(guī)?;驅⒊^18萬億元。
如此大的交易規(guī)模,其中最核心的問題就是移動支付的安全問題[2]。在移動安全支付中,移動支付的關鍵問題是確立安全的支付認證模式[3]。對于很多重要的支付系統(tǒng)而言,如果只有支付密碼作為唯一的認證手段,從安全層面上看存在著很大的風險[4]。因此為了增強網站的安全性,大多數網上支付平臺或者網上銀行都會采用雙因素認證或多因素認證[5]。這些不同的認證手段可以相互結合,使得認證的過程更加安全。因此密碼不再是唯一的認證手段,在客戶密碼丟失的情況下,也可以有效地保護客戶的賬戶安全。
當前,各金融機構如商業(yè)銀行采取的一些通用的安全認證手段有短信密碼驗證、動態(tài)口令、數字證書或者以上這些方式的組合[6],而短信驗證是目前二次身份驗證中成本最低、最容易實現也最便捷的身份驗證方案,客戶的綁定性較強,不需要額外設備,校驗成本極低,是通過率最高、操作性最好的驗證手段。然而,在目前已有的方案里,短信驗證碼必須絕對保密,一旦短信驗證碼由于各種原因泄露,仍然會造成資金失竊。近年來屢屢發(fā)生的電信詐騙案中,騙取短信驗證碼往往是犯罪嫌疑人欺詐得逞的主要手段和關鍵環(huán)節(jié)。
基于對以上問題的考慮,本文提出了一種基于“客戶口令+加密驗證短信”的雙因素認證模式,在身份認證過程中使用安全性更好的混合加密機制,同時在驗證碼傳輸過程中對驗證碼進行二次加密,以保障在驗證碼泄露的情況下移動支付過程的安全性[7],降低客戶財產損失的風險。
1.1 身份驗證
網絡信息安全的五個功能包括身份認證、授權、保密性、完整性和不可否認,其中身份認證是最基本最重要的環(huán)節(jié)。身份認證的作用是保證在具體的決策環(huán)節(jié),體現客戶的真實意愿[8]。
通常,身份認證有三個要素:
1)所知:things only the user knows,如密碼、安保問題;
2)所有:things only the user has,如手機校驗碼、U盾;
3)所是:things only the user is,如指紋、虹膜。
從密碼學角度上來說,使用上面兩者完成的驗證稱為雙因素驗證(Two Factor Authentication)[9]。在目前的網絡環(huán)境下,單獨使用以上單一認證因素都會存在其問題和風險:
1)所知:容易被遺忘、猜取以及信息泄露導致的碰撞;
2)所有:容易被釣魚、丟失;
3)所是:認證成本過高,本體容易受到攻擊。
這些認證因素本身的安全性也有高低之分,由于獲取以及偽造的難度不同,一般認為第一類的安全性比第二類差,第二類又比第三類差;但需要明確的是,如果只有其中一種都算是弱認證,必須獨立使用兩種甚至三種才算是強認證。二次認證就是使用三類認證中兩種以上的認證方式,它能夠保證我們的支付認證是安全有效的。
1.2 公共基礎設施
公鑰基礎設施(Public Key Infrastructure, PKI)是由公開密鑰密碼技術、數字證書、證書認證機構(Certification Authority, CA)和關于公開密鑰的安全策略等基本成分共同組成的比較成熟、完善的網絡安全方案解決技術。其用公鑰的概念與技術來實現,提供安全服務的具有普遍適用性的安全基礎設施,是一種遵循標準的密鑰管理平臺,能夠為所有網絡應用透明地提供采用加密和數字簽名等密碼服務所必需的密鑰和證書管理[10]。公鑰基礎設施在實際應用上是一套軟硬件系統(tǒng)和安全策略的集合,它提供了一整套安全機制,使用戶在不知道對方身份或分布地很廣的情況下,以證書為基礎,通過一系列的信任關系進行安全的通信,如網絡通信、網上交易等都利用它來保證安全。
為了確保用戶的身份及他所持有密鑰的正確匹配,PKI/CA充當了公開密鑰系統(tǒng)所需要的一個權威的、可信賴的、公正的第三方機構的認證中心。CA認證系統(tǒng)是PKI的核心組成部件,CA架構包括PKI結構、強度抗攻擊的公開加解密算法、數字簽名技術、身份認證技術、運行安全管理技術、可靠的信任責任體系等。主要工具是CA中心為網上作業(yè)主體頒發(fā)的數字證書,作用是檢查PKI體系中所有證書持有者身份的合法性,并簽發(fā)證書、更新證書和廢除發(fā)放的證書,具有機密性、身份驗證特性和不可否認性,為信息安全提供了有效、可靠的保護機制。
1.3 加密算法
MD5是在MD4單向散列(Hash)函數基礎上更趨成熟的算法,MD表示消息摘要(Message Digest)[11]。整個散列算法的輸出結果由四個分組構成,這四個分組的每一個分組都是32比特,并且這四分組級聯(lián)后將會產生一個散列值,這個散列值的長度就是四個分組級聯(lián)后的長度,即128比特,這個128比特的散列值被稱作消息摘要。
AES算法的加密與解密過程都有以下四種具體的操作:字節(jié)替代(SubBytes)、行移位(ShiftRow)、列混淆(MixColumns)和輪密鑰加(AddRoundKey)。在Rijdaeld加密過程中[12],每一輪進行的處理都是從字節(jié)替代開始,然后進行行移位,接著進行列混淆,最后是輪密鑰加的運算;而解密過程分別為對應的逆操作,即首先進行輪密鑰加的運算,然后是列混淆,接著是行移位,最后一步是字節(jié)替代。
RSA公開密鑰密碼體制就是使用不同的加密密鑰與解密密鑰,是一種“由已知加密密鑰推導出解密密鑰在計算上是不可行的”密碼體制[13]。加密公式如下:
C=PEmodN
(1)
其中:C表示密文;P表示明文;E與N的組合就是公鑰,一般用(E,N)來表示,RSA的加密就是求“E次方的modN”,也就是說RSA的密文是對代表明文的數字的E次方求modN的結果。解密公式如下:
P=CDmodN
再說去醫(yī)院。中醫(yī)是我信賴的。這個基礎,不是因為中醫(yī)藥是國學,而是我至今還相信,陰陽平衡乃至內宇宙所說。因為,世界乃至浩渺的太空,從來就是如此的遙遠、博大和幽深,但它還是一個整體,這個星球,與我們,甚至與外星人等不可見的事物,從來也都是一種相互依存、生克制化的關系,盡管我們此時此刻還沒有和他們迎頭相遇?!饵S帝內經·素問》中說:“陰陽者,天地之道也,萬物之綱紀,變化之父母,生殺之本始,神明之府也,治病必求于本?!?/p>
(2)
其中D與N的組合就是私鑰,一般用(D,N)來表示,RSA的解密過程就是求“D次方的modN”,也即對表示密文的數字的D次方求modN就可以得到明文。
在RSA密碼體制中通常是先生成一對密鑰,其中的私有密鑰由客戶保存;另一個為公開密鑰,可對外公開,甚至可在網絡服務器中注冊。
要保證支付的安全性就要建立安全的會話機制,然后在此基礎上完成支付過程。整個支付過程分為兩個階段:第一個階段是服務器與客戶端的相互認證階段,這個階段使用的認證方法是基于PKI的CA認證;第二階段是支付階段,主要進行相關的支付操作。需要說明的是:本文方案中的密鑰對分別由客戶端與服務器端產生,因此CA證書的生成是分布式生產,客戶端或服務器把各自公鑰傳給CA提出證書請求,如果請求通過,CA生成證書,并將證書公布在CA中心數據庫中[14]??蛻舳伺c服務器從CA數據庫中下載證書,并在認證階段通過驗證數字證書來確認對方身份的合法性,認證工作完成以后就可以進行相關的支付操作。本文方案中使用的符號定義如表1所示。
表1 相關符號描述Tab. 1 Description of related symbols
2.1 PKI/CA在線數字簽名認證流程
2.1.1 CA系統(tǒng)組成
CA系統(tǒng)包括用戶的證書提交請求、證書申請審核、證書生成、證書發(fā)布與證書使用等流程。
本文方案中的密鑰對分別由客戶端與服務器端產生,具體過程如下:
1)證書申請:客戶端連接到CA服務器,并把客戶的證書申請信息PKCS#10傳送給CA,CA把申請信息放到CA中心數據庫中,提交的申請中包含用戶公鑰和用戶標識信息。
2)證書申請審核:CA管理員從CA數據庫中提取申請信息,然后進行相應操作(批準或拒絕)。
3)證書生成:申請批準后,CA服務器端則生成證書,并且對證書進行簽名后存儲到數據庫中,以便用戶下載。
4)證書發(fā)布:客戶端從證書數據庫獲得發(fā)布的證書并將它安裝在自己的本地證書存儲區(qū)中。
圖1 CA系統(tǒng)工作模型Fig. 1 Working model of CA system
2.1.2 身份認證流程
數字簽名驗證的原理是對原文作數字摘要和簽名并傳輸原文,然而傳輸的原文一般要求保密,這就要求用數字信封的方法對原文進行加密。數字簽名驗證的基本工作原理是用對稱密鑰加密傳輸,而將對稱密鑰用接收方公鑰加密發(fā)送給對方;接收方收到數字信封后用自己的私鑰解密信封,并取出對稱密鑰解密得原文。傳統(tǒng)的數字認證過程使用的混合加密機制是MD5、3DES、RSA[15],本文方案認證過程使用的混合加密機制為MD5、AES、RSA。具體過程如下:
1)客戶端將從CA中心下載的X.509標準數字證書作為傳輸信息(包含用戶名、證書序列號、有效期以及用戶的身份標識),經過MD5運算得到一個128比特的散列值,即為信息摘要MD。
2)客戶端通過RSA算法使用客戶私鑰CSK加密信息摘要MD得到數字簽名DS;把信息的明文、數字簽名DS以及客戶公鑰CPK三項內容利用密鑰SK通過對稱加密算法AES加密得到密文信息E;使用在CA中心下載的服務器公鑰SPK加密對稱算法加密密鑰SK,形成數字信封DE;最后把加密后的密文信息E與數字信封DE一同發(fā)送給接收方服務器端。
3)服務器端接收到信息后首先使用服務器自身的服務器私鑰SSK解密數字信封DE得到對稱算法加密密鑰SK;接著使用密鑰SK解密接收到的加密信息E,解密后得到的是信息明文、數字簽名和用戶公鑰CPK;然后使用客戶公鑰CPK進一步解密得到的數字簽名獲取信息摘要MD;同時將經過解密的信息明文再用MD5函數進行運算,重新計算得到一個信息摘要MD′。比較MD與MD′是否相同,如果相同則表明傳送的信息沒有被篡改過,通過提取證書信息可以進行用戶身份確認,表明由此驗證服務器和客戶終端之間建立了安全通道;否則拒絕確認,拒絕進行相應服務。
在整個認證的過程中,用戶與服務器都分別持有自己的私鑰;而公鑰是公開的,在認證過程中可以在客戶端和服務器之間進行傳輸,密鑰由加密算法函數分別生成。因此,攻擊者無法偽造和篡改經過CA進行認證以后的數字簽名,進而能夠建立高可信度的網絡安全保障體系,保證網絡不同實體之間傳輸信息的真實性、可靠性、保密性與不可否定性。在線認證過程如圖2所示。
2.2 支付階段
1)在支付業(yè)務服務器和客戶終端進行確認建立安全通道后,登錄客戶端APP主界面,在主界面中選擇進入支付頁面后客戶端的支付請求信息REQ調用服務器公鑰SPK加密,加密后的信息SPK(REQ)向支付業(yè)務服務器發(fā)送支付請求。
2)支付業(yè)務服務器接收到支付請求后,用服務器私鑰SSK解密提取支付請求中的支付信息,在確認支付請求后,支付業(yè)務服務器生成驗證碼VC,先用服務器端私鑰SSK加密驗證碼得到一次密文驗證碼SSK(VC),然后再用客戶端APP公鑰CPK加密得到二次密文驗證碼CPK{SSK(VC)}。服務器將此二次密文驗證碼通過短信發(fā)送給客戶端APP。
3)客戶從手機短信中得到二次密文驗證碼CPK{SSK(VC)}之后,將它輸入客戶端APP??蛻舳薃PP用客戶端私鑰CSK解密二次密文驗證碼CPK{SSK(VC)}得到一次密文驗證碼SSK(VC),再用服務器端公鑰SPK解密得到原始驗證碼VC。
4)客戶端APP用客戶私鑰CSK加密原始驗證碼得到一次驗證碼密文CSK(VC),然后用服務器端公鑰SPK加密一次密文得到二次密文SPK{CSK(VC)},最后將二次密文發(fā)送給服務器端。
5)支付業(yè)務服務器端用服務器私鑰解密二次密文SPK{CSK(VC)}得到一次驗證碼密文CSK(VC),然后用客戶公鑰解密得到原始明文驗證碼VC,服務器在對驗證信息與服務器中存儲的原始驗證碼匹配后,支付可以進行。
需要指出:服務器端和客戶端APP的密鑰需要定期更新,也即CA中心的證書是有實效期的。服務器并不能獲取客戶的私有密鑰,這是為了保證數字簽名的安全性,否則服務器就可以偽造客戶簽名,導致支付出現問題。支付階段驗證碼加密過程如圖3所示。
圖2 客戶端與服務器認證過程Fig. 2 Authentication process of client and server
2.3 預留信息驗證
為了保證在更換移動設備時依然能夠實現安全驗證,該方案需要在客戶注冊時進行預留安全問題設置。
1)在移動設備第一次使用時,應用會獲取移動設備信息發(fā)送給服務器,服務器將登記保存客戶的設備信息和客戶公鑰CPK。
2)用戶登錄賬號時客戶端APP會將獲取的當前設備的設備信息和之前保存在服務器上的設備信息進行比對,如果相同則表明用戶沒有更換移動設備,驗證登錄信息后直接進入應用操作界面;如果比對結果不同,客戶端APP將轉向預留安全問題頁面,預留安全問題回答正確時確認用戶合法,則重新生成客戶公鑰CPK與私鑰CSK并發(fā)送給服務器端進行更新保存,客戶端APP可以正常使用。用戶如果在已安裝過客戶端APP的設備上重新安裝或者升級客戶端APP時,會檢測當前設備是否已安裝過此客戶端APP,如果已安裝過,那么當前安裝的客戶端APP將不再調用密鑰生成器重新生成客戶公鑰CPK與私鑰CSK。
3)如果是攻擊者竊取了密鑰,就會在自己的設備上登錄APP,無法正確回答預留安全問題,身份驗證失敗,客戶端APP默認用戶非法,則無法使用客戶端APP。此時服務器端保存的客戶端公鑰維持不變,并記錄“密碼已泄漏”,當合法用戶登錄客戶端后系統(tǒng)會提醒用戶有非法用戶已竊取了密碼,建議用戶修改密碼,從而使非法獲取用戶名、密碼的攻擊者無法再登錄,從而避免設備丟失造成損失問題的發(fā)生。
圖3 支付階段驗證碼加密驗證過程Fig. 3 Encryption and verification process of verification code in payment
本文提出的基于短信驗證碼的移動支付解決方案,首先能夠有效防止非法客戶的欺騙,具體體現在:
1)在用戶身份驗證方面,除了用戶要自身持有用戶名和密碼之外,在登錄客戶端時服務器端會和客戶端進行在線數字驗證,通過驗證后會建立安全通道,保證支付的順利進行。在驗證的過程中服務器會保存客戶端傳遞的客戶公鑰,并且服務器會通過數字簽名驗證客戶的可信度,從而使非法客戶無法通過驗證,進而無法繼續(xù)支付操作。同時本文方案采取了預留信息驗證的方式,用戶在第一次使用客戶端進行信息注冊時,系統(tǒng)會要求用戶填寫并提交驗證信息,同時獲取移動端設備的相關信息,這些驗證信息會在服務器上進行保存。當用戶使用的通信手機卡被發(fā)動了補卡攻擊,造成當前使用的手機卡失效,非法用戶使用另外的移動設備安裝客戶端APP并與驗證服務器進行驗證時,服務器發(fā)現客戶端的移動設備信息比對錯誤,就需要進一步驗證用戶的安全信息,通過安全驗證信息之后用戶才能正常使用客戶端,避免了補卡攻擊導致財產損失情況的發(fā)生。
2)在數據通信方面,本文方案的數字認證階段采用MD5的散列函數算法獲取信息摘要,保證了傳輸信息的完整性;并且對要傳輸的信息使用的是對稱加密算法AES,降低了信息被竊取破解的風險;而在此過程中對稱密鑰的傳輸則使用公開密鑰算法RSA進行加密,使得對稱密鑰在傳輸過程中有了更加安全的防護,從而保證了在整個認證過程中重要信息的安全。而在第二階段的支付過程對支付業(yè)務處理服務器和移動客戶端之間的支付通信信息加入的公開密鑰算法的兩次加密防護,又保證了支付驗證的相關信息不被輕易泄露或盜取,有效杜絕了傳統(tǒng)短信消息在傳送和接收過程中未加密而出現的各種潛在風險,對于無線監(jiān)聽等攻擊行為起到了相應的防護作用。本文方案的驗證碼在服務器和客戶端直接進行傳遞時,都需要經過兩次加密,首先使用對方的公鑰加密驗證碼,接著使用自身的私鑰對加密信息進行簽名,這樣服務器或客戶端接收到驗證碼以后需要使用對方的公鑰進行簽名驗證,之后再用自身的私鑰解密信息來得到原始驗證碼。這樣以密文方式傳遞,即使在信道內被竊取或是被偽基站截獲也無法識別內容,必須要使用私鑰解密后才能轉換成明文。但是客戶私鑰與服務器私鑰都由其自身保管,并不公開,是嚴格保密的,攻擊者無法獲取。因此即使由短信木馬病毒造成驗證碼密文泄漏,攻擊者也不能獲取驗證碼,更不可能完成支付,從而保證了資金的安全。
該實驗服務器端的處理器采用AMD AthlonTM X4 750 Processor 3.40 GHz,4 GB內存;操作系統(tǒng)為64位Windows 7;編程基于Eclipse Mars(JDK1.7開發(fā)包)平臺,并配置Android SDK開發(fā)包,客戶端性能測試工具HyperPacer。
圖4表示的是不同用戶訪問情況下,客戶端登錄賬戶后與服務器之間進行認證的響應時間情況。其中:橫坐標表示的是用戶訪問數(即移動終端數);縱坐標表示的是數字認證方案加密主要信息使用不同加密算法后,用戶登錄認證系統(tǒng)的平均響應時間。由對比結果可以看出,雖然兩種方案的響應時間整體增長趨勢是相似的,但使用AES加密的方案整體時間要比3DES加密的方案短。這表明AES算法在整體安全性及時間效率上均優(yōu)于3DES算法,因此本文認證方案中選擇使用AES算法是具有一定的優(yōu)勢的。
圖4 數字認證不同加密方案的平均認證響應時間Fig. 4 Average authentication response time required for different encryption schemes
圖5表示的是加密不同位數驗證碼的平均加密時間。根據日常使用的習慣,實驗分別使用的是:2位、4位、6字以及8位數字的長度。其中:橫坐標表示的是用戶使用移動端的并發(fā)訪問數量(即移動終端數量),縱坐標表示的是實驗中用RSA加密所花費的平均反應時間。從圖中可以看出,RSA算法加密這些數字的時間隨著并發(fā)請求的增多呈線性增長趨勢,但由于被加密文件的信息容量比較小,所以平均加密時間的整個增長趨勢并不明顯。由此表明使用本文選定長度的密鑰進行RSA算法加密用在短信息加密上并不會影響系統(tǒng)效率。而解密時間比加密的平均時間略低,解密這四種不同位數驗證碼的圖形走勢與加密整體上沒有太大的差別,都是呈線性關系。
圖5 RSA對不同位數驗證碼的平均加密時間Fig. 5 Average encryption time required for RSA to encrypt different digits of verification code
圖6表示的是使用商用短信發(fā)送接口從系統(tǒng)響應支付請求后生成驗證碼到調用短信發(fā)送接口發(fā)送驗證碼直至用戶收到驗證碼的等待平均時間。其中:橫坐標表示的是用戶使用移動端的并發(fā)用戶的訪問量,縱坐標表示的是服務器響應客戶端支付請求到客戶端接收信息的總時間。圖中3條曲線分別代表的是服務器未加密驗證碼調用Mob接口(記為Mob)、服務器未加密驗證碼調用Juhe接口(記為Juhe)以及服務器加密驗證碼調用Mob接口(記為Eycrypted Mob)的用戶響應總時間,之所以在加密后調用Mob接口發(fā)送短信,是因為Mob接口的整體表現要優(yōu)于Juhe接口。從圖可以看出,隨著用戶訪問量的增加,使用不同接口的系統(tǒng)平均響應時間也在逐漸增加,并隨著并發(fā)訪問量的增加而相應增大,但是整個增長過程是線性的,其增長速度也不快,因此不會出現系統(tǒng)性能隨著用戶數量的增長而急劇下降的現象,這表明系統(tǒng)在大量用戶同時進行訪問時,系統(tǒng)的健壯性表現較好。
圖6 系統(tǒng)平均響應時間-移動端并發(fā)訪問量Fig. 6 Average response time of the system v.s. concurrent access of mobile terminal
針對使用短信驗證碼作為支付驗證方式的解決方案在驗證碼傳輸過程中以及在運營商的服務器上沒有經過加密,容易被盜取等問題,本文把加密算法引入到了短信傳輸的全過程。本文方案是對傳統(tǒng)的PKI驗證使用的混合加密機制進行改進,其中的對稱密鑰算法用AES替換3DES,可以保證更好的安全性和更高的效率。另外對于短信驗證碼進行二次加密,驗證碼以密文方式傳遞,必須使用客戶私鑰解密后才能轉換成明文,這使得即使驗證碼密文泄露,也能夠較好地保護用戶資金的安全。仿真實驗結果表明,本文提出的基于加密短信驗證碼的移動安全支付方案能夠保證短信驗證碼的加密傳輸,同時在性能上與未加密驗證碼驗證的支付方案無明顯差異,很好地解決了短信驗證碼明文傳輸存在的問題。
本文方案中的雙因素身份驗證是加密的短信驗證碼和用戶賬戶密碼,如果用戶的手機丟失,那么用戶手機的獲取者在沒有獲取用戶支付賬號和密碼的情況下無法完成系統(tǒng)登錄進而也無法向服務器提交支付請求以及獲取驗證碼。同樣,如果非法用戶獲取了用戶的支付賬戶密碼,在沒有獲取用戶手機的情況下,一旦向服務器提交支付請求,支付驗證碼就會發(fā)送到用戶手機上,使用戶意識到賬戶被盜的可能。但如果同時獲取到用戶的支付賬號、密碼和用戶手機,也即兩種驗證因素都泄露的情況下,非法用戶獲取了所有用戶的身份驗證因素,那么非法用戶就可以完全冒充用戶進行支付操作,這種方案的安全性防護就會失效。同樣地,對于使用多因素身份驗證方案來說,如果用戶多種驗證因素都泄露,也無法起到保護用戶賬戶安全的作用。因此除了技術手段保證用戶賬戶安全以外,用戶自身也要養(yǎng)成保護重要隱私信息的意識。
本文提出的基于加密短信驗證碼的移動安全支付方案還可以更加完善,而且其他更多關于移動支付多因素認證的關鍵技術也可以運用到支付驗證過程中,如生物信息驗證和臉部識別等。此外采取多因素驗證能在原有驗證基礎上對重要信息起到更好的防護,但當驗證因素比較多時對保管驗證信息也將是巨大的挑戰(zhàn),因此,對于驗證安全信息的管理優(yōu)化問題也需要進行深入的研究。
References)
[1] 中國互聯(lián)網絡信息中心.第37次中國互聯(lián)網絡發(fā)展狀況統(tǒng)計報告報告[R]. 北京: 中國互聯(lián)網絡信息中心,2016. (China Internet Network Information Center. The 37th China Internet Development Statistics Report [R]. Beijing: CNNIC, 2016.)
[2] 李海飛.移動支付中的安全協(xié)議研究[D].西安:西安電子科技大學,2014:7-13. (LI H F. Research on security protocol in mobile payment [D]. Xi’an: Xidian University, 2014: 7-13.)
[3] DAHLBERG T, GUO J, ONDRUS J. A critical review of mobile payment research [J]. Journal of Electronic Commerce Research and Applications, 2015, 14(5): 265-284.
[4] 楊晨,楊建軍.移動支付安全保障技術體系研究[J].信息技術與標準化,2010(7):17-20. (YANG C, YANG J J. Research on the technical system and standardization of security assurance for mobile payment [J]. Information Technology & Standardization, 2010(7): 17-20.)
[5] XU Z, ZHANG T, ZENG Y, et al. A secure mobile payment framework based on face authentication[C]// IMECS2015: Proceedings of the 2015 International MultiConference of Engineers and Computer Scientists, LNCS 2215. Berlin: Springer-Verlag, 2015, 1: 495-501.
[6] 白璐.信息技術對我國商業(yè)銀行創(chuàng)新的影響研究[D].長春:吉林大學,2013:13-17. (BAI L. Research on the influence of information technology on the innovation of China’s commercial banks [D]. Changchun: Jilin University, 2013: 13-17.)
[7] 周曉誼,姚孝明,李益紅.互聯(lián)網金融存在的安全問題亟待解決——以移動遠程支付APP為例[J].信息安全與技術,2014,5(10):8-12. (ZHOU X Y, YAO X M, LI Y H. Security problems of Internet finance urge solutions — an example of remote payment APPs on mobile devices [J]. Information Security and Technology, 2014, 5(10): 8-12.)
[8] 馮韻.移動支付中身份認證分析與研究[J].信息通信,2012(3):107-109. (FENG Y. Analysis and research of identity authentication in mobile payment [J]. Journal of Information Communication,2012(3): 107-109.)[9] 曹巍,趙滟.一種基于雙因素認證的移動支付安全技術研究[J].信息安全與技術,2014,5(2):10-12,15. (CAO W, ZHAO Y. Research on the technology of mobile payment security based on two-factor authentication [J]. Information Security and Technology,2014, 5(2): 10-12,15.)
[10] WARD H, GREENWALD G E, SHANAHAN F A. Systems and methods for remote authorization of financial transactions using Public Key Infrastructure (PKI): US, 9462473 [P]. 2016- 10- 04.
[11] 張裔智,趙毅,湯小斌.MD5 算法研究[J].計算機科學,2008,35(7):295-297. (ZHANG Y Z, ZHAO Y, TANG X B. Research on MD5 algorithm [J]. Computer Science, 2008, 35(7): 295-297.)
[12] DAEMEN J, RIJMEN V.高級加密標準(AES)算法:Rijndael的設計[M].谷大武,徐勝波,譯.北京:清華大學出版社,2003:9-52. (DAEMEN J, RIJMEN V. The Design of Rijndael AES: The Advanced Encryption Standard [M].GU D W,XU S B, translated. Beijing: Tsinghua University Press, 2003: 9-52.)
[13] 王茜,倪建偉.一種基于RSA的加密算法[J].重慶大學學報(自然科學版),2005,28(1):68-72. (WANG Q, NI J W. An RSA based encryption algorithm[J]. Journal of Chongqing University (Natural Science Edition), 2005, 28(1): 68-72.)
[14] 周曉斌,許勇,張凌.一種開放式PKI身份認證模型的研究[J].國防科技大學學報,2013,35(1):169-174. (ZHOU X B, XU Y, ZHANG L. Research on an open PKI identity authentication model [J]. Journal of National University of Defense Technology, 2013, 35(1): 169-174.)
[15] 肖振久,胡馳,姜正濤,等.AES與RSA算法優(yōu)化及其混合加密體制[J].計算機應用研究,2014,31(4):1189-1194. (XIAO Z J,HU C,JIANG Z T et al. AES and RSA algorithm optimization and its hybrid encryption system [J]. Application Research of Computers, 2014, 31(4): 1189-1194.)
This work is partially supported by the National Natural Science Foundation of China (61472412), the Education Department Natural Science Foundation of Henan Province (14A520012).
LISai, born in 1989, M. S. candidate. His research interests include mobile computing, mobile security.
LIXiaoyu, born in 1974, Ph. D.,associate professor. His research interests include quantum computing and quantum information, mobile computing.
MobilesecurepaymentsolutionbasedonencryptedSMSverificationcode
LI Sai, LI Xiaoyu*
(SchoolofInformationEngineering,ZhengzhouUniversity,ZhengzhouHenan450001,China)
Aiming at the problem that payment verification code is easy to leak during the process of mobile payment, a two-factor mobile payment solution based on encrypted SMS was proposed. Based on the public key system, the Public Key Infrastructure/Certification Authority (PKI/CA) authentication method was used to authenticate the server and the client online, and the registered user name, password and encrypted transaction verification SMS were used to ensure that even if the verification code ciphertext was leaked, the attacker can not obtain the verification code, thus eliminating the risk of theft caused by the verification code leakage. The simulation results show that the response time of the encrypted verification solution using the SMS interface is not very different from the unencrypted solution, and the growth trend is consistent with that of the unencrypted solution and increases linearly with the increase of the user access, which can take into account both of security and effectiveness of the system.
mobile payment; SMS verification code; two factor authentication; Public Key Infrastructure/Certification Authority (PKI/CA); encryption algorithm
TP309.2; TP393.08
A
2017- 02- 10;
2017- 04- 22。
國家自然科學基金資助項目(61472412);河南省教育廳自然科學基金資助項目(14A520012)。
李賽(1989—),男,河南永城人,碩士研究生,主要研究方向:移動計算、移動安全; 李曉宇(1974—),男,河南南陽人,副教授,博士,CCF會員,主要研究方向:量子計算與量子信息、移動計算。
1001- 9081(2017)08- 2270- 05
10.11772/j.issn.1001- 9081.2017.08.2270