一種應(yīng)用于移動商務(wù)系統(tǒng)的安全解決方法
【專利摘要】本發(fā)明提供一種應(yīng)用于移動商務(wù)系統(tǒng)的安全解決方法,所述移動商務(wù)系統(tǒng)包括移動設(shè)備、銷售終端、M-Commerce服務(wù)器、支付服務(wù)器和商家服務(wù)器,其中銷售終端與移動設(shè)備產(chǎn)生通訊連接,移動設(shè)備通過網(wǎng)絡(luò)與M-Commerce服務(wù)器連接,M-Commerce服務(wù)器分別與支付服務(wù)器、商家服務(wù)器連接,所述安全解決方法用于解決所述移動設(shè)備、以及所述移動設(shè)備到E-Commerce服務(wù)器之間的安全機(jī)制,這些安全機(jī)制可以保證移動商務(wù)交易中數(shù)據(jù)的真實(shí)性、機(jī)密性、完整性和不可抵賴性。
【專利說明】一種應(yīng)用于移動商務(wù)系統(tǒng)的安全解決方法
[0001]【技術(shù)領(lǐng)域】:
本申請屬于移動設(shè)備安全領(lǐng)域,具體涉及一種應(yīng)用于移動商務(wù)系統(tǒng)的安全解決方法。
[0002]【背景技術(shù)】:
移動設(shè)備應(yīng)用的快速增長帶來了大量的個人與移動運(yùn)營商之間的通訊。除了被用作語音和文字的通訊工具,越來越多的人更愿意使用移動設(shè)備經(jīng)由無線網(wǎng)絡(luò)隨時隨地的網(wǎng)上購物、做生意或者管理購物卡、銀行賬戶、貸款及信用卡等等。
[0003]使用移動設(shè)備的應(yīng)用程序來做電子交易的用戶最關(guān)心的一點(diǎn)莫過于交易信息的安全性,這包括了交易信息以下幾個方面:真實(shí)性、機(jī)密性、完整性和不可抵賴性。
[0004]參見圖1,為電子交易Μ-Commerce平臺的體系結(jié)構(gòu),根據(jù)角色以及數(shù)據(jù)傳輸過程中提供服務(wù)的不同,可以從中劃分出五個實(shí)體,分別有著不同的安全機(jī)制:
A ->設(shè)備到銷售終端 B ->設(shè)備
C ->設(shè)備到M-Commerce服務(wù)器 D -> M-Commerce 服務(wù)器
E -> Μ-Commerce服務(wù)器到支付服務(wù)器(銀行)的通訊 F -> Μ-Commerce服務(wù)器到商家服務(wù)器(第三方)的通訊
本發(fā)明可以確保用戶在無線網(wǎng)絡(luò)上安全地傳輸來自于移動設(shè)備應(yīng)用程序的電子化交易信息,并且比傳統(tǒng)的瀏覽器模式更加的安全和方便。
[0005]
【發(fā)明內(nèi)容】
:
本發(fā)明為了克服現(xiàn)有技術(shù)中移動設(shè)備應(yīng)用程序的電子化交易信息的低安全性、機(jī)密性和完整性,提供了一種新的應(yīng)用于移動商務(wù)系統(tǒng)的安全解決方法。
[0006]在M-Commerce平臺的體系結(jié)構(gòu)其中移動設(shè)備、移動設(shè)備到E-Commerce服務(wù)器之間的安全機(jī)制,它與安裝在移動設(shè)備中的應(yīng)用程序是密切相關(guān)的。這些安全機(jī)制可以保證移動商務(wù)交易中數(shù)據(jù)的真實(shí)性、機(jī)密性、完整性和不可抵賴性,
具體可以概括為以下幾點(diǎn):
1.將移動設(shè)備中的客戶端程序與MSISDN (MSISDN號碼是在公共電話網(wǎng)交換網(wǎng)絡(luò)編號計劃中,唯一能識別移動用戶的號碼)進(jìn)行綁定。
[0007]2.使用臨時交易ID做為實(shí)體卡片ID的引用,因此黑客無法獲取實(shí)體卡片的ID。
[0008]3.客戶端程序必須經(jīng)過CA (電子商務(wù)認(rèn)證中心)認(rèn)證簽名,以確保該程序是由可信賴的公司發(fā)行并且不會被黑客竄改。
[0009]4.采用隨機(jī)算法獲得會話密鑰,而在這些密鑰對應(yīng)的商業(yè)交易過程中采用對稱加密算法,這不但解決了對稱加密算法中密鑰管理的困難,同時也解決了非對稱加密算法性能低下的問題。
[0010]5.對應(yīng)不同的會話有不同的會話密鑰,甚至在同一個會話中,會話密鑰和加密算法也是交替變化的,這樣可以確保加密策略不可復(fù)制。
[0011]6.采用了數(shù)據(jù)及隨機(jī)數(shù)來防止重復(fù)消息攻擊。[0012]本發(fā)明還保護(hù)手機(jī)設(shè)備的安全性:由于綁定了手機(jī)應(yīng)用的pin碼與終端的MSISDN,即便終端用戶更換了手機(jī)里的SIM卡,他也無法使用先前安裝的應(yīng)用程序,而只能重新安裝M-Commerce應(yīng)用。
[0013]【專利附圖】
【附圖說明】:
圖1為現(xiàn)有技術(shù)中的M-Commerce平臺的體系結(jié)構(gòu);
圖2為典型的手機(jī)應(yīng)用流程;
圖3為本發(fā)明的激活進(jìn)程的安全機(jī)制;
圖4為本發(fā)明的登錄進(jìn)程的安全機(jī)制;
圖5為本發(fā)明的業(yè)務(wù)流程的安全機(jī)制;
圖6為本發(fā)明的公共密鑰的更新機(jī)制。
[0014]【具體實(shí)施方式】:
以下內(nèi)容將結(jié)合說明書附圖對本發(fā)明的【具體實(shí)施方式】作詳細(xì)說明:
參見圖2,為典型的手機(jī)應(yīng)用流程,手機(jī)客戶端發(fā)送請求從Μ-Commerce服務(wù)(器)端下載應(yīng)用程序,常規(guī)的流程如下:
1、服務(wù)端必須使用https協(xié)議確保服務(wù)端是可靠的。下載的應(yīng)用程序必須具有CA簽名認(rèn)證以確保程序是由可信賴的公司發(fā)布并且不被黑客竄改。
[0015]2.M-Commerce服務(wù)端在收到客戶端安裝程序成功的狀態(tài)信息后向客戶端發(fā)送激活碼,服務(wù)端將激活碼與客戶端的MSISDN進(jìn)行綁定。下載協(xié)議必須支持OMA-Download-OTA規(guī)范,這樣才能確保各種不同的支付方式可以使用并且避免信息內(nèi)容的碎片化。
[0016]3.當(dāng)客戶端的應(yīng)用程序第一次運(yùn)行時,為了初始化登錄密碼需要輸入接收到的激活碼用以建立Pin碼(SM卡的個人識別密碼)。
[0017]4.在激活之后,終端用戶可以使用pin碼登錄應(yīng)用程序。如果嘗試登錄的次數(shù)超過了預(yù)先設(shè)定的次數(shù)而沒有成功,那么登錄的賬號將被鎖定,在這種情況下,只有經(jīng)授權(quán)的管理員用戶才能夠在驗(yàn)證用戶后予以解鎖。
[0018]5.登錄成功后,終端用戶可以做一些事情,比如購買商品、支付賬單,使用電子卡
&坐坐/I寸寸O
[0019]在本發(fā)明中采用了一些安全方法,增強(qiáng)了上述步驟3、4、5的安全通訊機(jī)制,來提高數(shù)據(jù)和通訊的安全性。
[0020]1.信用卡或者銀行賬號不會被存儲在或發(fā)布到手機(jī)或Μ-Commerce服務(wù)器。支付服務(wù)器會生成一個唯一的內(nèi)部ID做為實(shí)體卡的引用,這一 ID在其他渠道都是無法識別的
(此ID在程序內(nèi)部使用,與實(shí)體卡--對應(yīng))。M-Commerce服務(wù)器為支付應(yīng)用生成一個臨時
事務(wù)ID作為內(nèi)部ID的引用(臨時事務(wù)ID在程序內(nèi)部使用,與內(nèi)部ID—一對應(yīng))。該支付事務(wù)ID只對該交易有效并且在很短的時間之后將會失效。(有效的判定由程序根據(jù)支付事務(wù)ID及生成后經(jīng)歷的時長確定,有效的時長可以設(shè)置)。
[0021]2.綁定手機(jī)應(yīng)用的pin碼與終端的MSISDN。即便終端用戶更換了手機(jī)里的SIM卡,他也無法使用先前安裝的應(yīng) 用程序,而只能重新安裝M-Commerce應(yīng)用程序。
[0022]3.采用終端用戶的pin碼來加密手機(jī)里的本地數(shù)據(jù)。即便用戶手機(jī)里的數(shù)據(jù)被盜取了,在沒有pin碼的情況下也無法解密這些數(shù)據(jù)。
[0023]4.在激活或者登錄過程服務(wù)端采用非對稱加密算法(RSA)獲得會話密鑰,在業(yè)務(wù)處理過程服務(wù)端采用對稱加密算法(3DES,AES)獲得會話密鑰。
[0024]5.M_Co_erce應(yīng)用程序在發(fā)布時會生成一個公共密鑰。這個公共密鑰用在非對稱算法中并且只能被Μ-Commerce服務(wù)器更新。
[0025]6.登錄成功后,M-Commerce服務(wù)器會生成一對密鑰(keyl和key2)用于通訊會話,加上兩種不同的對稱加密隨機(jī)3DES+AES,就有四個加密方式:
3DES+keyl
3DES+key2
AES+keyl
AES+key2
每一個交易都會隨機(jī)選擇一種加密方式,這樣就能保證每次交易都有不同的安全策略。
[0026]激活進(jìn)程的安全機(jī)制:圖3為本發(fā)明的激活進(jìn)程安全機(jī)制的詳細(xì)過程:
1.客戶端程序按照隨機(jī)算法(RNG算法)生成客戶端會話密鑰(SKM)。
[0027]2.客戶端程序采用非對稱加密算法(RSA算法)基于服務(wù)端的公共密鑰來加密數(shù)據(jù),這些數(shù)據(jù)包括SKM (安全密鑰管理)、PIN、激活碼等。
[0028]3.M-Commerce服務(wù)器基于私鑰解密消息,從這些消息中獲得有用的信息,這些有用的信息包括SKM,PIN,激活碼等數(shù)據(jù)。
[0029]4.如果激活碼是有效的,就進(jìn)行校驗(yàn)。
[0030]5.M-Commerce服務(wù)器基于會話密鑰(SKM)加密MSG (響應(yīng)消息),并且根據(jù)MD5為該消息(加密前的)計算MACl。
[0031]6.客戶端程序從M-commerce服務(wù)器接收消息并且基于會話密鑰(SKM)解密響應(yīng)消息,為解密后的響應(yīng)消息計算MAC2,如果MACl與MAC2相等就進(jìn)行檢驗(yàn)。
[0032]上述步驟2和3采用的是非對稱加密算法,是服務(wù)端接收會話密鑰的的過程,步驟5、6采用的是對稱加密算法,是服務(wù)端發(fā)送給客戶端會話密鑰的過程;其中MD5即Message-Digest Algorithm 5,是當(dāng)前計算機(jī)領(lǐng)域用于確保信息傳輸完整一致而廣泛使用的散列算法之一 ;MAC1與MAC2計算得到的消息的代碼,響應(yīng)消息就是手機(jī)端向服務(wù)端發(fā)送請求變量的一些值的響應(yīng),不同的應(yīng)用程序在激活時需要從服務(wù)端需要拿到的變量不一樣的。
[0033]登錄進(jìn)程的安全機(jī)制:圖4為本發(fā)明的登錄進(jìn)程的安全機(jī)制的詳細(xì)過程:
在使用客戶端應(yīng)用程序的業(yè)務(wù)功能之前,終端用戶必須成功地登錄Μ-Commerce服務(wù)器,這樣才能獲得所使用業(yè)務(wù)的會話密鑰。圖4描述了詳細(xì)的登錄安全機(jī)制。
[0034]登錄的通信過程類似于激活過程;請求和響應(yīng)的業(yè)務(wù)數(shù)據(jù)是不同的。Μ-Commerce服務(wù)器會檢查登錄名和密碼;同時會檢查MSISDN和PIN碼之間的綁定關(guān)系。登錄校驗(yàn)之后,服務(wù)器會生成一對會話密鑰用于通信,此過程中采用非對稱算法(RSA)獲得會話密鑰。如果客戶端和服務(wù)器之間在設(shè)定的時間段內(nèi)沒有發(fā)生任何操作,那么這對密鑰將會過期。
[0035]業(yè)務(wù)流程的安全機(jī)制:圖5為本發(fā)明的業(yè)務(wù)流程的安全機(jī)制的詳細(xì)過程:
登錄成功后,終端用戶可以做一些操作,比如購買商品,支付賬單,使用電子卡片。這些
操作的安全性由于涉及到敏感數(shù)據(jù)故而非常重要。正如前述,一些臨時卡或者賬戶的ID將在通信過程中生成而不是實(shí)體卡號,這些臨時的卡或者賬戶ID將僅僅在指定的業(yè)務(wù)過程中有用。
[0036]信用卡或者銀行賬號不會被存儲在或發(fā)布到手機(jī)或Μ-Commerce服務(wù)器。支付服務(wù)器會生成一個唯一的內(nèi)部ID做為實(shí)體卡的引用,這一 ID在其他渠道都是無法識別的(此ID在程序內(nèi)部使用,與實(shí)體卡一一對應(yīng)),意指,同一張卡在不同的業(yè)務(wù)流程中的ID都是不一樣的。M-Commerce服務(wù)器為支付應(yīng)用生成一個臨時事務(wù)ID作為內(nèi)部ID的引用(臨時事務(wù)ID在程序內(nèi)部使用,與內(nèi)部ID —一對應(yīng))。該支付的臨時事務(wù)ID只對該交易有效并且在很短的時間之后將會失效。有效的判定由程序根據(jù)支付事務(wù)ID及生成后經(jīng)歷的時長確定,有效的時長可以設(shè)置。
[0037]其中的安全機(jī)制是一個標(biāo)準(zhǔn)的對稱加密過程(3DES/AES)??蛻舳嗽趦蓚€加密算法(3DES/AES)中隨機(jī)選擇一種,并且選擇兩個會話密鑰。每一個處理過程采用不同的加密方式,這樣可以增強(qiáng)通信的安全性。
[0038]具體地,M-Commerce服務(wù)器會生成一對密鑰(keyl和key2)用于通訊會話,加上兩種不同的對稱加密隨機(jī)3DES+AES,就有四個加密方式:
3DES+keyl
3DES+key2
AES+keyl
AES+key2
每一個交易都會隨機(jī)選擇一種加密方式,這樣就能保證每次交易都有不同的安全策略。
[0039]另一個重要點(diǎn)是M-Commerce服務(wù)器將會生成一個隨機(jī)數(shù)和一個遞增序列用于每個處理過程來防止重復(fù)消息攻擊。當(dāng)請求消息中的隨機(jī)數(shù)不等于服務(wù)端的隨機(jī)數(shù)或者序列數(shù)小于上一個消息的序列數(shù),服務(wù)器會拒絕該消息并且記錄到歷史數(shù)據(jù)中。
[0040]公共密鑰的更新:一對公共密鑰被分配給客戶端程序,出于安全性的考慮,這些公共密鑰會被周期性的更新,圖6展示了公共密鑰更新的過程。其中公共密鑰的更新是發(fā)生在激活或者登錄過程中的。
[0041]1.客戶端程序基于服務(wù)端的公共密鑰加密數(shù)據(jù),這些數(shù)據(jù)用于激活或者登錄過程并且發(fā)送請求到M-Commerce服務(wù)器。
[0042]2.服務(wù)器解密這些數(shù)據(jù),發(fā)現(xiàn)公共密鑰已經(jīng)過期,隨后就通知客戶端說公共密鑰已經(jīng)過期。
[0043]3.客戶端響應(yīng)一個新的公共密鑰發(fā)送給服務(wù)器。
[0044]4.服務(wù)器發(fā)送帶有備份服務(wù)器私鑰簽名的公共密鑰,其中備份服務(wù)器私鑰是和客戶端的備份服務(wù)器公鑰相關(guān)的。
[0045]5.客戶端校驗(yàn)服務(wù)器備份密鑰的簽名。如果成功,將會刪除當(dāng)前的活動公共密鑰并且激活備份的公共密鑰,來自服務(wù)器的新的公共密鑰將成為新的備份密鑰。
[0046] 本發(fā)明的這些安全機(jī)制可以保證移動商務(wù)交易中數(shù)據(jù)的真實(shí)性、機(jī)密性、完整性和不可抵賴性,其有益效果是將移動設(shè)備中的客戶端程序與MSISDN (手機(jī)號碼)進(jìn)行綁定;使用臨時交易ID做為實(shí)體卡片ID的引用,因此黑客無法獲取實(shí)體卡片的ID ;客戶端程序必須經(jīng)過CA (電子商務(wù)認(rèn)證中心)認(rèn)證簽名,以確保該程序是由可信賴的公司發(fā)行并且不會被黑客竄改;采用非對稱加密算法獲得會話密鑰,而在這些密鑰對應(yīng)的商業(yè)交易過程中采用對稱加密算法,這不但解決了對稱加密算法中密鑰管理的困難,同時也解決了非對稱加密算法性能低下的問題;對應(yīng)不同的會話有不同的會話密鑰,甚至在同一個會話中,會話密鑰和加密算法也是交替變化的,這樣可以確保加密策略不可復(fù)制;采用了數(shù)據(jù)及隨機(jī)數(shù)來防止重復(fù)消息攻擊。
【權(quán)利要求】
1.一種應(yīng)用于移動商務(wù)系統(tǒng)的安全解決方法,所述移動商務(wù)系統(tǒng)包括移動設(shè)備、銷售終端、M-Commerce服務(wù)器、支付服務(wù)器和商家服務(wù)器,其中銷售終端與移動設(shè)備產(chǎn)生通訊連接,移動設(shè)備通過網(wǎng)絡(luò)與M-Commerce服務(wù)器連接,M-Commerce服務(wù)器分別與支付服務(wù)器、商家服務(wù)器連接,其特征在于,所述移動設(shè)備的Pin碼與MSISDN綁定一起,所述安全解決方法用于解決所述移動設(shè)備、以及所述移動設(shè)備到E-Commerce服務(wù)器之間的安全機(jī)制。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,當(dāng)移動設(shè)備客戶端發(fā)送請求從M-Commerce服務(wù)端下載應(yīng)用程序時,包括以下步驟: 1)激活步驟;2)登錄步驟;3)業(yè)務(wù)操作步驟; 其中在步驟1)和2)中服務(wù)端采用非對稱加密算法獲得會話密鑰,在步驟3)中服務(wù)端采用對稱加密算法獲得會話密鑰。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述激活步驟中采用的激活進(jìn)程的安全機(jī)制,具體包括: 1)、移動設(shè)備客戶端程序按照隨機(jī)算法生成客戶端會話密鑰; 2)、客戶端程序采用非對稱加密算法并基于服務(wù)端的公共密鑰來加密數(shù)據(jù); 3),M-Commerce服務(wù)器基于私鑰解密上述加密數(shù)據(jù),并獲得有用的信息,這些有用的信息包括SKM,PIN,激活碼等數(shù)據(jù); 4)、如果激活碼是有效的,就進(jìn)行校驗(yàn); 5),M-Commerce服務(wù)器基于會話密鑰加密響應(yīng)消息,并且根據(jù)MD5為該消息計算MACl ; 6)、客戶端從M-co_erce服務(wù)器接收加密后的響應(yīng)消息并且基于會話密鑰解密響應(yīng)消息,為解密后的響應(yīng)消息計算MAC2,如果MACl與MAC2相等就進(jìn)行檢驗(yàn)。
4.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述登錄步驟中采用的登錄進(jìn)程的安全機(jī)制,具體包括: 1)M-Commerce服務(wù)器檢查登錄名和密碼;同時檢查MSISDN和PIN碼之間的綁定關(guān)系; 2 )登錄校驗(yàn)之后,所述服務(wù)器生成一對會話密鑰用于客戶端與服務(wù)端的通信,此通信過程中采用非對稱算法,如果所述客戶端和所述服務(wù)器之間在設(shè)定的時間段內(nèi)沒有發(fā)生任何操作,那么這對密鑰將會過期。
5.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述業(yè)務(wù)操作步驟中采用的業(yè)務(wù)流程的安全機(jī)制,具體包括: O信用卡或者銀行賬號不會被存儲在或發(fā)布到手機(jī)或Μ-Commerce服務(wù)器,支付服務(wù)器會生成一個唯一的內(nèi)部應(yīng)用程序ID做為實(shí)體卡的引用; 2)M-Commerce服務(wù)器為支付應(yīng)用生成一個臨時事務(wù)ID作為內(nèi)部應(yīng)用程序ID的引用,該支付的臨時事務(wù)ID只對該交易有效并且在很短的時間之后將會失效; 3)每一個交易都會隨機(jī)選擇一種加密方式,所述加密方式是客戶端在兩個加密算法3DES/AES中隨機(jī)選擇一種并加上兩個會話密鑰之一; 4)M-Commerce服務(wù)器將會生成一個隨機(jī)數(shù)和一個遞增序列用于每個處理過程來防止重復(fù)消息攻擊。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于:采用的業(yè)務(wù)流程的安全機(jī)制3)中有四個加密方式:分別是:3DES+keyl、3DES+key2、AES+keyl、AES+key2,其中 key I 和 key 2 是M-Commerce服務(wù)器生成的一對密鑰。
7.根據(jù)權(quán)利要求5所述的方法,其特征在于:采用的業(yè)務(wù)流程的安全機(jī)制4)中是當(dāng)請求消息中的隨機(jī)數(shù)不等于服務(wù)端的隨機(jī)數(shù)或者請求消息中的序列數(shù)小于上一個消息的序列數(shù),服務(wù)器會拒絕該消息并且記錄到歷史數(shù)據(jù)中。
8.根據(jù)權(quán)利要求1所述的方法,其特征在于:所述移動商務(wù)系統(tǒng)還包括與Μ-Commerce服務(wù)器相連接的備份服務(wù)器。
9.根據(jù)權(quán)利要求8所述的方法,其特征在于,在步驟I)和2)中還有公共密鑰的更新機(jī)制: 1)、客戶端程序基于服務(wù)端的公共密鑰加密數(shù)據(jù),這些數(shù)據(jù)用于激活或者登錄過程并且發(fā)送請求到M-Commerce服務(wù)器; 2),M-Commerce服務(wù)器解密這些數(shù)據(jù),發(fā)現(xiàn)公共密鑰已經(jīng)過期,隨后就通知客戶端說公共密鑰已經(jīng)過期; 3)、客戶端響應(yīng)一個新的公共密鑰發(fā)送給M-Co_erce服務(wù)器; 4)、M-Commerce服務(wù)器發(fā)送帶有備份服務(wù)器私鑰簽名的公共密鑰,其中備份服務(wù)器私鑰是和客戶端的備份服務(wù)器公鑰相關(guān)的; 5)、客戶端校驗(yàn)服務(wù)器備份密鑰的簽名,如果成功,將會刪除當(dāng)前的活動公共密鑰并且激活備份的公共密鑰,來自服務(wù)器 的新的公共密鑰將成為新的備份密鑰。
【文檔編號】H04L29/06GK103888263SQ201410135701
【公開日】2014年6月25日 申請日期:2014年4月4日 優(yōu)先權(quán)日:2014年4月4日
【發(fā)明者】祝海濤, 王繼剛, 呂學(xué)坤, 李智遠(yuǎn), 申建 申請人:國建正坤數(shù)字科技(北京)有限公司