專利名稱:一種無線移動終端通訊加密的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及信息安全與通訊技術(shù)領(lǐng)域,特別是涉及一種無線移動終端通訊 加密的方法。
背景技術(shù):
隨著通信技術(shù)的發(fā)展及其應(yīng)用的普及推廣,移動通訊已成為一種主要的通 信手段。然而,電信網(wǎng)絡(luò)基礎(chǔ)結(jié)構(gòu)的內(nèi)在缺陷使人們越來越關(guān)注移動通訊的安全性。雖然無線移動網(wǎng)絡(luò)(GSM、 C固A)的空中接口部分也提供了一定的加密能 力,但GSM的空中接口加密技術(shù)已被證明有嚴(yán)重缺陷,監(jiān)聽及破解設(shè)備早已市 場有售。所謂安全的CDMA空中接口加密技術(shù)也在理論上被證明是不安全的,以 色列的安全分析人員亦曾在互聯(lián)網(wǎng)絡(luò)上公布了相應(yīng)監(jiān)聽設(shè)備。而且,針對無線 移動通信的監(jiān)聽往往在有線傳輸系統(tǒng)中更易于實(shí)現(xiàn)。事實(shí)上,無線信號在基站(Base Station)完成接入后皆以明文形式在有線或微波網(wǎng)絡(luò)中傳輸,任何廉 價的用于監(jiān)聽有線固定網(wǎng)絡(luò)或微波通信的設(shè)備皆可用于此目的。顯然,為解決 通信安全問題對現(xiàn)有電信網(wǎng)絡(luò)基礎(chǔ)結(jié)構(gòu)進(jìn)行改造是不切實(shí)際的,結(jié)合現(xiàn)代密碼 技術(shù)研究一種端到端的信息安全保障機(jī)制,無疑成為滿足電信安全需求的最佳、 也是最經(jīng)濟(jì)實(shí)用的手段之一。通訊的內(nèi)容在一方被加密后直到到達(dá)另一端時才 被解密,從而保證任何中間交換設(shè)備及傳輸系統(tǒng)的漏洞無法造成安全威脅。目 前雖有許多方案被提出,但普遍存在安全漏洞與應(yīng)用局限。1998年12月16日公開的中國專利申請《移動無線網(wǎng)絡(luò)終端間進(jìn)行直接加 密通信的方法及其相應(yīng)設(shè)施》(申請?zhí)?8108859)提出了一種通訊加密方法。 該方法中,主叫方利用網(wǎng)絡(luò)發(fā)來的隨機(jī)數(shù)RAND生成密鑰Kc,然后該密鑰Kc通 過呼叫建立消息被發(fā)送到被叫方,這樣通訊雙方就可以利用Kc對通話數(shù)據(jù)進(jìn)行 加密/解密。該方法擯棄了傳統(tǒng)方法中的通話加密與解密密鑰由GSM運(yùn)營商提 供,改為由用戶自己生成,因此保密程度有了一定的提高。但是Kc由GSM/DCS網(wǎng)絡(luò)提供的隨機(jī)數(shù)RAND以及網(wǎng)絡(luò)與用戶共享的Ki通過A8算法生成。無論隨機(jī) 數(shù)RAND, Ki, A8算法,還是生成的Kc都是由GSM運(yùn)營商管理,因此GSM運(yùn)營 商對這種加密可以很容易地加以破解。2003年7月23日公開的中國專利申請《手機(jī)加密的方法》(申請?zhí)?99117599.9)提出了一種應(yīng)用于GSM網(wǎng)絡(luò)的對手機(jī)進(jìn)行加密的方法。該方法中 由主叫方或被叫方利用偽隨機(jī)數(shù)發(fā)生器產(chǎn)生隨機(jī)數(shù)RAND,通過數(shù)據(jù)業(yè)務(wù)將隨機(jī) 數(shù)RAND傳送給對方。主叫方和被叫方利用隨機(jī)數(shù)RAND和雙方預(yù)共享的Km生成 全程通話加密密鑰Kn,這樣通訊雙方就利用Kn對通話數(shù)據(jù)進(jìn)行加密與解密。 區(qū)別于專利申請[98108859],參與生成全程通話加密密鑰Kn的隨機(jī)數(shù)RAND, 由主叫方或被叫方生成,而非由網(wǎng)絡(luò)提供。因此,該專利申請的方法為通話提 供獨(dú)立于運(yùn)營商的安全保障。但是,該方法存在嚴(yán)重的安全漏洞。首先,隨機(jī) 數(shù)RAND以明文方式傳送,主動攻擊者可篡改隨機(jī)數(shù)RAND的值,而使雙方不能 通過認(rèn)證而無法通話;另外,因?yàn)殡S機(jī)數(shù)RAND是已知的,預(yù)共享Km的更新存 在問題。尤其當(dāng)Km遭受離線攻擊時,通話的安全性將受到嚴(yán)重烕脅。 一旦Kiti 泄漏,系統(tǒng)的前向安全性被完全破壞,即所有以前的通話將不再保密。最后, 該方法僅限于通話雙方預(yù)先共享有Km的情況,其使用范圍受到極大限制。2004年10月27日公開的中國專利申請《移動終端加密的方法》(申請?zhí)?200310105363. 3)提出了一種應(yīng)用于CDMA網(wǎng)絡(luò)的對手機(jī)進(jìn)行加密的方法。該方 法的主要內(nèi)容是在移動終端提供加解密處理模塊,通過VoIP (Voice over IP) 的方式對加密數(shù)據(jù)進(jìn)行傳輸。通信過程中鑒權(quán)協(xié)商和控制則由SIP (Session Initial Protocol)協(xié)議的信令實(shí)現(xiàn)。雖然采用SIP信令控制可以減少對CDMA 信令控制的依賴,因此不用對現(xiàn)有的CDMA網(wǎng)絡(luò)信令系統(tǒng)進(jìn)行修改就可以傳送一 些加密操作所必需的數(shù)據(jù),但該方法的缺點(diǎn)也很明顯。首先,依賴于SIP信令 大大局限了應(yīng)用范圍,目前絕大多數(shù)移動終端設(shè)備不支持SIP協(xié)議;其次,該 方法沒有提供密碼學(xué)意義上的身份認(rèn)證與密鑰管理的機(jī)制,更無法防范主動攻 擊,無法保證安全性。2005年7月20日授權(quán)的發(fā)明專利《具有語音加密/解密的可攜式裝置及其 加密解密方法》(ZL03153185. 7)使用了 DSA、 RSA等非對稱加密算法與DES 等對稱加密算法,但沒有提供密鑰更新與管理機(jī)制,也無法防范中間人式主動 攻擊,存在嚴(yán)重安全漏洞。另外,該方法僅限于擁有藍(lán)牙,紅外線以及WiFi 網(wǎng)絡(luò)連接的終端設(shè)備,應(yīng)用大大受限。以上方法普遍無法提供可靠且可擴(kuò)展的身份認(rèn)證機(jī)制,而缺乏身份認(rèn)證的 傳輸加密并不具備真正意義上的安全性。當(dāng)前工業(yè)實(shí)踐中,實(shí)現(xiàn)身份認(rèn)證往往 需要引入可信的第三方,如目前互聯(lián)網(wǎng)中普遍使用的基于公鑰基礎(chǔ)結(jié)構(gòu)(PKI: Public Key Infrastructure)的身份認(rèn)證體系。但是,PKI體系由于使用、部署、運(yùn)行、維護(hù)與操作的復(fù)雜性,并不適合絕大多數(shù)移動通信用戶的普遍需要。 本發(fā)明提出一種用于無線移動終端保密通訊的安全架構(gòu)及實(shí)現(xiàn)方法。在此安全 架構(gòu)下,無線移動通信用戶無需承受公鑰基礎(chǔ)結(jié)構(gòu)(PKI)的使用、部署、運(yùn)行、 維護(hù)與操作的復(fù)雜性,無需電信運(yùn)營商的參與,無需替換或影響電信信令交換 協(xié)議,實(shí)現(xiàn)在保障可靠身份認(rèn)證基礎(chǔ)上的、端到端的保密信息交換。發(fā)明內(nèi)容本發(fā)明的目的在于設(shè)計一種無線移動終端通訊加密的方法。移動通信用戶使用移動終端身份標(biāo)識作為身份標(biāo)識ID,通過手機(jī)短信或數(shù)據(jù)服務(wù)從可信的第 三方來獲取私鑰,進(jìn)而實(shí)現(xiàn)移動用戶間的密鑰交換與安全參數(shù)協(xié)商,實(shí)現(xiàn)端到 端的保密移動通訊。為實(shí)現(xiàn)上述目的,本發(fā)明采取以下技術(shù)方案引入了可信的第三方,稱為密鑰生成中心KGC (Key Generation Center),其主要功能是根據(jù)用戶的移動 終端身份標(biāo)識生成用戶的私鑰。KGC公布其服務(wù)號碼及公開參數(shù)。移動用戶通 過短信或其它數(shù)據(jù)服務(wù)與KGC通信,在獲取私鑰后,與通信的另一端進(jìn)行加密 密鑰交換及安全參數(shù)協(xié)商,實(shí)現(xiàn)端到端的安全通訊。 具體的技術(shù)方案如下一種無線移動終端通訊加密的方法,包括以下步驟1) 引入第三方引入一可信的第三方即KGC, KGC公布其服務(wù)號碼并產(chǎn) 生和公布公開參數(shù);2) 移動終端用戶注冊及獲得私鑰每一移動終端用戶使用移動終端身份標(biāo) 識,通過短信或數(shù)據(jù)服務(wù)與KGC進(jìn)行交互完成注冊,包括KGC獲得用戶的身 份標(biāo)識ID、用戶獲取KGC發(fā)送的公開參數(shù)以及用戶通過KGC的協(xié)助計算獲得 私鑰;3) 移動終端用戶間共享密鑰的獲取及會話密鑰的協(xié)商取得當(dāng)移動終端用 戶需要進(jìn)行保密通信時,用戶對其獲得的私鑰進(jìn)行安全處理得到各自安全參數(shù), 發(fā)送給對方通訊終端,各方根據(jù)對方提供的安全參數(shù)計算得到雙方的共享密鑰; 為確保上述操作無誤,各移動終端基于傳統(tǒng)的Diffie-Hdlman密鑰交換算法和 用戶的身份標(biāo)識ID協(xié)商用戶間的會話密鑰,得到各方安全共享的會話密鑰;4) 移動終端用戶使用安全共享的會話密鑰,采用成熟的對稱密鑰流/塊加 密算法進(jìn)行數(shù)據(jù)加密,將通過移動設(shè)備的信息交換置于可靠的安全保護(hù)之下。以上方法中,步驟l)所述第三方KGC為非移動通信網(wǎng)絡(luò)運(yùn)營商。 以上方法中,步驟l)所述KGC產(chǎn)生的參數(shù)包括p, q, ", g, A e和雜湊函數(shù)Hash,其中, p, g為素數(shù);"至少為1024比特; g與w互素;d為KGC的私鑰;e為KGC的公鑰,且^^mod(p-l)(《-l), e與(p-l)(《-l)互素; KGC通過網(wǎng)站或無線公共信道公布其服務(wù)號碼和公開參數(shù),所述公開參數(shù) 包括e、 w、 g和雜湊函數(shù)好os/z。以上方法中,步驟2)所述用戶身份標(biāo)識ID為用戶設(shè)備標(biāo)識IMEI碼和用戶手機(jī)號碼的組合或其中之一。以上方法中,步驟2)所述注冊包括一個KGC向首次注冊用戶發(fā)送公開參 數(shù)的過程,首次注冊用戶的確認(rèn)是通過KGC維護(hù)一個關(guān)于用戶身份標(biāo)識ID的 一個數(shù)據(jù)庫ID-Database實(shí)現(xiàn)的,依據(jù)此數(shù)據(jù)庫檢查移動用戶的ID是否已注冊, 如已注冊,則KGC通知用戶該ID已注冊,并終止注冊進(jìn)程。以上方法中,步驟2)所述私鑰獲得的步驟包括(1) 移動終端用戶將收到的KGC的公幵參數(shù)與KGC在步驟1中公開的參 數(shù)對比,以檢查公開參數(shù),然后,產(chǎn)生兩個大素數(shù)A, ^,并計算n產(chǎn)p^p選 取一個臨時密鑰對,記為,且eT與^滿足^^mod(p廣l)(①-l), er與(^-l)(^i-l)互素,最后,計算^o-ID^mod"i(2) 移動終端用戶將&、 eT和"!發(fā)送給KGC;(3) KGC驗(yàn)證ID=( s0) eT mod 成立,并使用<i,計算s產(chǎn)ID軒mod ",' 將&發(fā)送給移動用戶;(4) 移動用戶收到^后,計算自己的私鑰^(^"mod"并驗(yàn)證ID-Zmod w成立,以此確認(rèn)該私鑰的真實(shí)性。(5) KGC在數(shù)據(jù)庫ID-Database中加入該ID的信息,標(biāo)識該ID已注冊,并 不再受理基于該ID的后續(xù)申請。以上方法中,步驟3)所述用戶間共享密鑰的獲取步驟包括(1) 一用戶A任選一個保密的隨機(jī)整數(shù)rA,并計算K二Sa^";另一用戶B 任選一個保密的隨機(jī)整數(shù)rB,并計算rB=sBfS;這里Sa和Sb分別是兩用戶在 步驟2)中獲得的私鑰;(2) 用戶A與用戶B交換各自產(chǎn)生的K與rB;(3) 用戶A和用戶B分別計算各自的A和^為《=(J^IDb—') " 二g,xw , A二 ( d1) W 二gex"x^ ;其中,IDa和瓜分別為用戶A和B各自在KGC注冊的用戶身份標(biāo)識ID, 由此,用戶A、 B生成了共享密鑰K^ #A =《B 。 以上方法中,步驟3)所述會話密鑰的協(xié)商取得包括如下過程(1) 用戶A任選一個保密的隨機(jī)整數(shù)&,計算J^g",并將Ja, ParamA, 以及雜湊函數(shù)值^二泡s力(A , l ParamA)—起發(fā)送給用戶B,其中ParamA 包括用戶A所支持的所有密碼算法,及該密碼算法的初始化參數(shù);(2) 用戶B任選一個保密的隨機(jī)整數(shù)&,計算i^-"并將Jb, PammB, 以及雜湊函數(shù)值私二^ss力(A , Jb, ParamB)發(fā)送給用戶A,其中ParamB包括 用戶B根據(jù)用戶A提供的參數(shù)ParamA選取的所能支持的密碼算法,及其相應(yīng)的算法初始化參數(shù);(3) 用戶A和B驗(yàn)證消息的完整性,計算方法分別為-泡5"力(JB , JB, Pa讓B)=泡5力U , A, ParamB),與 /fes/ (A , ZA, ParamA)=泡s力(JB , I ParamA);(4) 如驗(yàn)證通過,用戶A和B分別計算他們的會話密鑰先wa和Asession-B二Ia" 二g^, o以上方法中,步驟4)所述成熟的對稱密鑰流/塊加密算法為AES, 3DES 或Two-Fish 。具體的本方法中,用戶間共享密鑰的獲取及會話密鑰的協(xié)商取得是利用用 戶A與B從KGC獲得的私鑰sA與sB ,并采用如下流程(1) 一用戶A任選一個保密的隨機(jī)整數(shù)A,并計算K二S^";同樣,另一用戶B任選一個保密的隨機(jī)整數(shù)A,并計算!^s^w ;(2) 用戶A與用戶B交換各自產(chǎn)生的K與rB;(3) 用戶A和B分別計算各自的A和^為Ja二(KIDb—t)"^g""^; Kn—V"二ge,,這里的IDa和瓜分別為用戶A和B各自在KGC注冊的用 戶身份標(biāo)識ID,由此用戶A和用戶B生成了共享密鑰K^ A =《b ;(4) 用戶A和B繼續(xù)協(xié)商會話密鑰如下a)用戶A任選一個保密的隨機(jī)整數(shù)4,計算JA=,,并將JA, ParamA, 以及雜湊函數(shù)值M二^as力OTA, 4 ParamA)—起發(fā)送給用戶B,其中ParamA 包括用戶A所支持的所有密碼算法,及該密碼算法的初始化參數(shù);b) 用戶B任選一個保密的隨機(jī)整數(shù)tB,計算A二g",并將JB, ParamB, 以及雜湊函數(shù)值A(chǔ)二泡s力(A , Zb, ParamB)發(fā)送給用戶A,其中ParamB 包括:用戶B根據(jù)用戶A提供的參數(shù)PammA選取的所能支持的密碼算法, 及其相應(yīng)的算法初始化參數(shù)c) 用戶A和B驗(yàn)證消息的完整性,計算方法分別為 〃as力(A , JB, ParamB) = 〃as力(A , JB, ParamB),與/fes力(A , A, ParamA)=泡s力(A , JA, ParamA);d) 如驗(yàn)證通過,用戶A和B分別計算他們的會話密鑰Ad"和Lss(。 -B:Asessi0 —B二A'6 二gWS 0本發(fā)明的主要特點(diǎn)為(1)移動用戶根據(jù)自己的注冊身份ID從KGC獲 取私鑰的安全性基于大數(shù)分解的困難性;(2)移動用戶使用自己的移動終端身 份標(biāo)識向KGC申請獲得對應(yīng)于ID的密鑰S; (3)移動用戶通過公共信道安全 地從KGC獲得對應(yīng)于特定ID的私鑰S; (4)移動用戶間密鑰協(xié)商的安全性基 于離散對數(shù)求解的困難性;(5)移動用戶間密鑰協(xié)商使用從KGC獲得的私鑰 S防范對Diffie-Hellman密鑰交換算法的中間人主動攻擊;(6) KGC作為可信 第三方,僅提供移動用戶的身份認(rèn)證,并不參與通信兩端的任何信息交互;(7) 端到端移動用戶通訊使用的傳輸加密密鑰僅限于參與移動通訊的雙方,對KGC 也是保密的。(8)本發(fā)明無需公鑰證書等公鑰基礎(chǔ)結(jié)構(gòu)(PKI)操作的復(fù)雜性。 (9)本發(fā)明使用移動終端身份標(biāo)識(如設(shè)備標(biāo)識IMEI碼,用戶手機(jī)號碼,或 它們的組合)作為身份標(biāo)識ID。
圖l:用戶注冊與密鑰獲取流程2:用戶間共享密鑰的獲取及會話密鑰的協(xié)商取得流程圖具體實(shí)施方式
這里給出該方法的一個具體實(shí)施例,具體實(shí)施例如下。1、 KGC產(chǎn)生公開參數(shù),并公布服務(wù)號碼與公開參數(shù)KGC選取兩個至少 512比特位的素數(shù)p和《,并計算"=/7《,其中,"為1024比特,KGC產(chǎn)生自己 的私鑰d和公鑰e,滿足e-Wmod (p-l)(tl),繼而KGC選取g和雜湊函數(shù)/^/z 等,且g與n互素。KGC通過網(wǎng)站發(fā)布公開參數(shù)e, w, g和雜湊函數(shù)/Z^^等。2、 移動用戶注冊與私鑰獲取如圖1所示,用戶注冊與私鑰獲取的流程如 下,其中KGC與移動用戶間的交互是通過短信進(jìn)行的(1) 移動用戶通過短信發(fā)送注冊申請給KGC,該申請包括用戶身份標(biāo)識ID, 在本實(shí)施例中ID取為用戶設(shè)備標(biāo)識IMEI碼(International Mobile Equipment Identity,通常由15-17位數(shù)字,以格式AA-BBBBBB-CCCCCC-D表示)和用戶 手機(jī)號碼的串接,表示為ID-用戶設(shè)備標(biāo)識IMEI碼II用戶手機(jī)號。(2) KGC維護(hù)一個關(guān)于用戶身份標(biāo)識ID的數(shù)據(jù)庫ID-Database,以檢查移動 用戶的ID是否已注冊,如已注冊,則KGC通知用戶該ID已注冊,并終止注 冊進(jìn)程;(3) KGC將它的公開參數(shù)e, ", g和雜湊函數(shù)i/"W等發(fā)給用戶;(4) 移動用戶將KGC發(fā)給它的公開參數(shù)e,",g和雜湊函數(shù)Z/aW等與KGC 通過網(wǎng)站公布的公開參數(shù)進(jìn)行對比以確認(rèn)。移動用戶產(chǎn)生兩個大素數(shù)A,w,計 算"產(chǎn)/ Wi,其中",為1024比特,接著選取一臨時密鑰對(eT, A),且a與 (3 T滿足(^T二eT"mod(p廣1X《i-1), eT與(p廣lX《i-l)互素;i十算S(pID々mod"i;(5) 移動用戶將^,eT和 發(fā)送給KGC;(6) KGC驗(yàn)證ID=(s0;rmod 成立,并使用自己的私鑰山計算s1: ^產(chǎn)ID^mod",將&發(fā)送給移動用戶;(7) 移動用戶收到&后,計算自己的私鑰^(A產(chǎn)mod",并驗(yàn)證ID"emod "成立,如此可確認(rèn)該私鑰的真實(shí)性;(8) KGC在數(shù)據(jù)庫ID-Database中加入該ID的相關(guān)信息,表示該ID已注冊, 并不再受理基于該ID的后續(xù)申請。3、 用戶間共享密鑰的獲取與會話密鑰的協(xié)商取得通過上述方法,用戶a 與B從KGC獲得的私鑰分別記為sA與sB ,如圖2所示,用戶間密鑰交換與安 全參數(shù)協(xié)商的流程如下,其中移動用戶相互間的交互是通過短信進(jìn)行的(1) 用戶A任選一個保密的隨機(jī)整數(shù)rA,并計算rA=sA^"同樣,用戶B 任選一個保密的隨機(jī)整數(shù)rB,并計算K二SBfS ;(2) 用戶A與用戶b交換各自產(chǎn)生的K與rB;(3) 用戶A和B分別計算各自的尼和A為《二(CTV" ",s ; K跳-》",s ;這里的iDa和iDB分別為用戶a和b各自在kgc注冊的 用戶身份標(biāo)識ID;至此用戶a、 b生成了共享密鑰k-《二 /tb ;(4) 為確保上述操作無誤,用戶a和b繼續(xù)協(xié)商會話密鑰如下a)用戶A任選一個保密的隨機(jī)整數(shù)tA,計算龍二w,并將A, ParamA,以及雜湊函數(shù)值〃,泡W (A, Ja, ParamA)—起發(fā)送給用戶B,其中ParamA 包括用戶A所支持的所有密碼算法,及該密碼算法的初始化參數(shù);b) 用戶B任選一個保密的隨機(jī)整數(shù)tB,計算ZB二^s,并將JB, ParamB, 以及雜湊函數(shù)值^二^as力(A , Jb, ParamB)發(fā)送給用戶A,其中ParamB包 括用戶B根據(jù)用戶A提供的參數(shù)ParamA選取的所能支持的密碼算法, 及其相應(yīng)的算法初始化參數(shù);c) 用戶A和B驗(yàn)證消息的完整性,計算方法分別為 /fes力(fB , JB, ParamB) = /fes力(7TA , ZB, ParamB),與 泡s力(jfA , JA, ParamA) 二 /fes力(A , A, ParamA);(5)如驗(yàn)證通過,用戶A和B分別計算他們的會話密鑰dwA和L,n—B:4、移動用戶A、 B使用安全共享的會話密鑰Lssi。n= A"。n—a二 LSsi。 —b采用成熟的對稱密鑰流/塊加密算法如AES, 3DES或Two-Fish等進(jìn)行數(shù)據(jù)加密,將 通過移動設(shè)備的信息交換至于可靠的安全保護(hù)之下。
權(quán)利要求
1. 一種無線移動終端通訊加密的方法,其特征在于,包括以下步驟1)引入第三方引入一可信的第三方即KGC,KGC公布其服務(wù)號碼并產(chǎn)生和公布公開參數(shù);2)移動終端用戶注冊及獲得私鑰每一移動終端用戶使用移動終端身份標(biāo)識,通過短信或數(shù)據(jù)服務(wù)與KGC進(jìn)行交互完成注冊,包括KGC獲得用戶的身份標(biāo)識ID、用戶獲取KGC發(fā)送的公開參數(shù)以及用戶通過KGC的協(xié)助計算獲得私鑰;3)移動終端用戶間共享密鑰的獲取及會話密鑰的協(xié)商取得當(dāng)移動終端用戶需要進(jìn)行保密通信時,用戶對其獲得的私鑰進(jìn)行安全處理得到各自安全參數(shù),發(fā)送給對方通訊終端,各方根據(jù)對方提供的安全參數(shù)計算得到雙方的共享密鑰;為確保上述操作無誤,各移動終端基于傳統(tǒng)的Diffie-Hellman密鑰交換算法和用戶的身份標(biāo)識ID協(xié)商用戶間的會話密鑰,得到各方安全共享的會話密鑰;4)移動終端用戶使用安全共享的會話密鑰,采用成熟的對稱密鑰流/塊加密算法進(jìn)行數(shù)據(jù)加密,將通過移動設(shè)備的信息交換置于可靠的安全保護(hù)之下。
2、 根據(jù)權(quán)利要求1所述的方法,其特征在于,步驟l)所述第三方KGC 為非移動通信網(wǎng)絡(luò)運(yùn)營商。
3、 根據(jù)權(quán)利要求1所述的方法,其特征在于,步驟l)所述KGC產(chǎn)生的 參數(shù)包括<formula>formula see original document page 2</formula>和雜湊函數(shù)Hash,其中,/ ,《為素數(shù);"=W,"至少為1024比特; g與M互素; d為KGC的私鑰;e為KGC的公鑰,且e^^mod0-1)(^1), e與0-l)(《-l)互素; KGC通過網(wǎng)站或無線公共信道公布其服務(wù)號碼和公開參數(shù),所述公開參數(shù) 包括e、 "、 g和雜湊函數(shù)/Z^/z。
4、 根據(jù)權(quán)利要求1所述的方法,其特征在于,步驟2)所述用戶身份標(biāo)識 ID為用戶設(shè)備標(biāo)識IMEI碼和用戶手機(jī)號碼的組合或其中之一。
5、 根據(jù)權(quán)利要求3所述的方法,其特征在于,步驟2)所述注冊包括一個 KGC向首次注冊用戶發(fā)送公開參數(shù)的過程,首次注冊用戶的確認(rèn)是通過KGC 維護(hù)一個關(guān)于用戶身份標(biāo)識ID的一個數(shù)據(jù)庫ID-Database實(shí)現(xiàn)的,依據(jù)此數(shù)據(jù) 庫檢查移動用戶的ID是否已注冊,如已注冊,則KGC通知用戶該ID己注冊, 并終止注冊進(jìn)程。
6、 根據(jù)權(quán)利要求5所述的方法,其特征在于,步驟2)所述私鑰獲得的步驟包括(1) 移動終端用戶將收到的KGC的公開參數(shù)與KGC在步驟1中公開的參 數(shù)對比,以檢查公開參數(shù),然后,產(chǎn)生兩個大素數(shù)^, ^,并計算"產(chǎn)/^W,選 取一個臨時密鑰對,記為(eT,^r),且6t與"t満足^:eT"mod(prl)(wl), eT與(^-l)(9i-l)互素,最后,計算s(rlD奸mod (2) 移動終端用戶將^)、 ^和",發(fā)送給KGC;(3) KGC驗(yàn)i正ID=(化)eT mod "!成立,并使用A計算s產(chǎn)ID軒mod ",.將&發(fā)送給移動用戶;(4) 移動用戶收到&后,計算自己的私鑰f(&產(chǎn)mod",.并驗(yàn)證ID-Zmod "成立,以此確認(rèn)該私鑰的真實(shí)性。(5) KGC在數(shù)據(jù)庫ID-Database中加入該ID的信息,標(biāo)識該ID已注冊,并 不再受理基于該ID的后續(xù)申請。
7、 根據(jù)權(quán)利要求1或2或3或4或5或6所述的方法,其特征在于,步驟 3)所述用戶間共享密鑰的獲取步驟包括(1) 一用戶A任選一個保密的隨機(jī)整數(shù)rA,并計算rA=SAg";另一用戶B 任選一個保密的隨機(jī)整數(shù)rB,并計算yB=SBfB;這里Sa和Sb分別是兩用戶在 步驟2)中獲得的私鑰;(2) 用戶A與用戶B交換各自產(chǎn)生的K與&(3) 用戶A和用戶B分別計算各自的A;和^為<formula>formula see original document page 3</formula>其中,IDa和IDB分別為用戶A和B各自在KGC注冊的用戶身份標(biāo)識ID, 由此,用戶A、 B生成了共享密鑰K^ A = fB 。
8、 根據(jù)權(quán)利要求7所述的方法,其特征在于,步驟3)所述會話密鑰的協(xié)商取得包括如下過程(1) 用戶A任選一個保密的隨機(jī)整數(shù)&,計算Z^g",并將Ja, ParamA, 以及雜湊函數(shù)值(A , ZA, ParamA)—起發(fā)送給用戶B,其中ParamA 包括用戶A所支持的所有密碼算法,及該密碼算法的初始化參數(shù);(2) 用戶B任選一個保密的隨機(jī)整數(shù)&,計算XB:^s,并將A, PammB, 以及雜湊函數(shù)值私二^fe^ (A , A, ParamB)發(fā)送給用戶A,其中ParamB包括 用戶B根據(jù)用戶A提供的參數(shù)ParamA選取的所能支持的密碼算法,及其相應(yīng) 的算法初始化參數(shù);(3) 用戶A和B驗(yàn)證消息的完整性,計算方法分別為-(/rB , JB, ParamB) = 〃as力(A , ZB, ParamB),與 〃as/ (A , JA, ParamA) 二 (/TB , ZA, ParamA);(4) 如驗(yàn)證通過,用戶A和B分別計算他們的會話密鑰a和Awb:Asession—A二JB^二g一 ^session-b二i^s 二g'jX,fl 。
9、 根據(jù)權(quán)利要求8所述的方法,其特征在于,步驟4)所述成熟的對稱密 鑰流/塊加密算法為AES, 3DES或Two-Fish。
10、 根據(jù)權(quán)利要求l、 2、 3、 4、 5、 7、 8或9所述的方法,其特征在于, 移動終端用戶間共享密鑰的獲取及會話密鑰的協(xié)商取得,是利用用戶A與B從 KGC獲得的私鑰SA與Sb ,并采用如下流程(1) 一用戶A任選一個保密的隨機(jī)整數(shù)A,并計算r^sw^同樣,另一用 戶B任選一個保密的隨機(jī)整數(shù)rB,并計算K二s^s ;(2) 用戶A與用戶B交換各自產(chǎn)生的K與FB;(3) 用戶A和B分別計算各自的《和A為A^(1HDB—V^g,,; A=UeIDA—這里的IDa禾口瓜分別為用戶A和B各自在KGC注冊的用 戶身份標(biāo)識ID,由此用戶A和用戶B生成了共享密鑰K二 7T八=/rB ;(4) 用戶A和B繼續(xù)協(xié)商會話密鑰如下a) 用戶A任選一個保密的隨機(jī)整數(shù)&,計算,并將XA, ParamA, 以及雜湊函數(shù)值"二泡s力Ua, Ja, ParamA)—起發(fā)送給用戶B,其中ParamA 包括用戶A所支持的所有密碼算法,及該密碼算法的初始化參數(shù);b) 用戶B任選一個保密的隨機(jī)整數(shù)&,計算,并將ZB, ParamB, 以及雜湊函數(shù)值UB , ZB, ParamB)發(fā)送給用戶A,其中ParamB 包括:用戶B根據(jù)用戶A提供的參數(shù)ParamA選取的所能支持的密碼算法, 及其相應(yīng)的算法初始化參數(shù)c) 用戶A和B驗(yàn)證消息的完整性,計算方法分別為 Afes/ (/TB , /B, ParamB) 二 (《,/B, ParamB)〃ss力(《,A, ParamA) = /fes力(#b , /a, ParamA);d) 如驗(yàn)證通過,用戶A和B分別計算他們的會話密鑰允w-a禾口 Ls."":Ases,-=g, ^session-B=i> 二g 0
全文摘要
本發(fā)明公開了一種用于無線移動終端通訊加密的方法。本發(fā)明中,無線移動通信用戶無需承受公鑰基礎(chǔ)結(jié)構(gòu)(PKI)的部署、維護(hù)與操作復(fù)雜性,無需電信運(yùn)營商的參與,無需替換或影響電信信令交換協(xié)議,實(shí)現(xiàn)在保障可靠身份認(rèn)證基礎(chǔ)上的、端到端的保密信息交換。移動通信用戶使用移動終端身份標(biāo)識作為身份標(biāo)識ID,引入可信的第三方,稱為密鑰生成中心KGC,其主要功能是根據(jù)用戶的身份標(biāo)識幫助用戶生成私鑰。用戶通過手機(jī)短信或數(shù)據(jù)服務(wù)從可信的第三方(KGC)來獲取對應(yīng)于身份標(biāo)識的私鑰。該私鑰保障移動用戶間的加密密鑰交換與安全參數(shù)協(xié)商抵抗主動攻擊,移動用戶間的會話密鑰獨(dú)立于KGC隨機(jī)生成,實(shí)現(xiàn)端到端的安全通訊。
文檔編號H04Q7/32GK101277512SQ20071006481
公開日2008年10月1日 申請日期2007年3月27日 優(yōu)先權(quán)日2007年3月27日
發(fā)明者倩 吳, 源 林, 林伯瀚, 趙晨嘯, 陳輝焱 申請人:廈門致晟科技有限公司