摘 要: 提出了一種基于數字簽名和公鑰" title="公鑰">公鑰加密的認證與密鑰協(xié)商方案,該方案可以實現移動用戶與移動服務提供商" title="服務提供商">服務提供商的互認證和密鑰協(xié)商。協(xié)議在移動用戶端只進行雜湊運算,計算量小,可靠性高,比較適合移動通信" title="移動通信">移動通信環(huán)境。
關鍵詞: 移動通信 公鑰? 會話密鑰? 雙向認證
?
無線通信技術的迅速發(fā)展,使移動通信以及以移動網絡為平臺的應用得到越來越多的重視和推廣。然而,對于用戶和運營商,安全卻是一個關鍵問題。移動通信中的認證與密鑰協(xié)商方案又一直是人們研究的重點。利用基于公鑰的認證體制構造用戶認證協(xié)議,不要求保密通信雙方共享任何秘密信息,可以簡化密鑰的管理問題,但公鑰密碼存在算法比較復雜、計算量大等缺點,特別是運用于計算能力" title="計算能力">計算能力有限的移動終端上,會為高速率的數據通信帶來瓶頸。為了最大限度地發(fā)揮公鑰認證體制的優(yōu)點,克服缺點,本文提出一種適用于移動通信的公鑰認證協(xié)議,移動用戶端只需完成計算量很小的雜湊運算就可以實現認證與密鑰協(xié)商,從而有效地提高通信速率。
1 認證與密鑰協(xié)商協(xié)議
1.1協(xié)議設計原則
移動通信的終端設備多以運算能力相對較弱、存儲量較小的智能卡為主,并且通信信道為無線信道。因此,從移動臺的計算能力和信道的開放特性出發(fā),協(xié)議應遵循以下原則:(1)盡量減少移動臺計算量。為此,在移動臺端使用雜湊函數替代公鑰加密算法,因為單純的雜湊運算比公鑰加密運算簡單很多,可以在很大程度上減小移動臺的負擔。(2)盡量減少敏感信息在協(xié)議中的傳輸。由于移動通信信道具有開放式,出于安全性考慮,應盡可能地將需要傳送的敏感信息(如會話密鑰)轉變?yōu)槠渌问降男畔?從而避免關鍵加密信息的泄漏。
另外,本文假設協(xié)議中所涉及到的公鑰加密與數字簽名算法都是安全的,并且所使用的雜湊函數是強單向函數。
1.2 符號描述
本文用到如下符號:
X,Y:表示消息x和y的連接;
Kse:表示實體間會話密鑰;
{x}K:表示用密鑰K加密消息x;
h(x):表示對消息x進行雜湊運算;
Alias:表示用戶的長期化名;
IDX:表示實體X的身份信息;
TX:表示實體X指定的時戳;
rx:表示x產生的隨機數" title="隨機數">隨機數;
A→B:x: A把消息x發(fā)送到B。
1.3 認證與密鑰協(xié)商協(xié)議描述
認證與密鑰協(xié)商協(xié)議模型如圖1所示。協(xié)議開始前,用戶U和移動服務提供商V分別在可信任的第三方TTP進行注冊。用戶U在注冊過程中,會告知TTP一個秘密消息M,同時TTP會將用戶U的身份信息IDU和長期化名Alias以及秘密消息M相關聯(lián)。移動服務提供商V在注冊過程中,會得到TTP的簽名證書,并且將其身份信息IDV以及公共密鑰PKV告知TTP。這些過程比較復雜,都可以離線完成。
下面給出認證與密鑰協(xié)商協(xié)議的詳細描述。

移動用戶U首先產生一個隨機數rU,然后將用戶長期化名Alias、隨機數rU以及移動服務提供商V身份信息IDV發(fā)送給TTP。

TTP收到來自用戶U的信息后,先將用戶長期化名Alias同用戶身份信息IDU進行映射。若映射后的身份信息為合法用戶且移動服務提供商V也為合法注冊用戶,則協(xié)議繼續(xù)。驗證通過后,TTP找出與用戶身份對應的秘密消息M并計算h(rU,M),然后與生成的隨機數rU、rT以及時戳TT一起計算h(rU,rT,h(rU,M),TT),并對h(rU,rT,h(rU,M),TT)進行數字簽名,得到
,再用V的公鑰PKV加密,得到
后將其轉發(fā)至V。
(3)V→U:{h(rV,Kse,TT,IDV),rV,TT}
移動服務提供商V收到來自TTP的報文(2)后,先利用私鑰SKV解密報文,然后從TTP頒發(fā)的簽名證書中得到TTP簽名公鑰從而驗證報文(2)的最后一段信息是否為TTP簽名信息。若是,說明報文來自TTP,則生成一個隨機數rV并計算其與用戶U之間的會話密鑰,Kse=h(rV,h(rU,M)),然后計算雜湊值h(rV,Kse,TT,IDV)并連同隨機數rV、時戳TT一起轉發(fā)給用戶U。
(4)U→V:{h(rV,Kse,TT,Alias)}
移動用戶U接收到來自(3)中的報文信息后,利用與(3)中相同的方式生成會話密鑰,然后用與(3)中相同的方式計算雜湊值,并與報文(3)的第一部分比對,若相同則說明信息的確來自用戶U發(fā)起協(xié)議時所期望與之通信的那個移動服務提供商V,并且V獲得與U相同的會話密鑰。接著U計算雜湊值h(rV,Kse,TT,Alias)并轉發(fā)至V。
(5)V收到來自(4)的報文信息后,利用先前存儲的長期化名以及會話密鑰等按與(4)中相同的方式計算雜湊值,并與接收到的信息比對,若正確,則說明用戶U已經知道會話密鑰,完成了認證過程。
2 協(xié)議性能分析
(1)移動終端計算負荷少。該協(xié)議最大特點就是移動終端的計算復雜度很低。從計算復雜度來說,最復雜耗時的是數字簽名,其次是對稱加密運算,而雜湊運算最為簡單。移動設備的計算能力十分有限,若用戶端的設計過于復雜,會使得整個協(xié)議的執(zhí)行效率低下,所以在用戶端采用計算量較小的雜湊函數。從整個協(xié)議來看,用戶U僅僅執(zhí)行了四次雜湊運算。而計算復雜的簽名和公鑰加密過程則放到了計算能力都比較強的TTP和移動服務提供商V端,因此協(xié)議可以很大程度減少認證延時,提高認證效率。
(2)會話密鑰的新鮮性與安全性。會話密鑰的計算是依靠移動用戶U和移動服務提供商V提供的隨機數以及移動用戶U的一段秘密報文共同產生的。用戶U每發(fā)起一次新的協(xié)議,就會生成新的隨機數,最終生成的會話密鑰也是新的,從而保證每次協(xié)議都使用不同的會話密鑰,有效地防止重放攻擊。由于會話密鑰的計算只與用戶U和移動服務提供商V提供的信息有關,其他任何實體都不能控制會話密鑰的生成,并且在身份認證過程中,屬于敏感信息的會話密鑰始終都沒有在信道中傳遞。僅僅是通過雜湊計算生成一個信息摘要來傳遞,這樣,就有效地防止了會話密鑰的泄漏,具有較高的安全性。
(3)有效的雙向認證。雙向認證的目的是確保協(xié)議所涉及的通信實體都是合法的,移動用戶U對移動服務提供商V認證,保證正在與之通信的移動服務提供商是協(xié)議發(fā)起時所期望與之通信的服務提供商,而移動服務提供商對用戶的認證又可以防止攻擊者假冒用戶獲取提供商的資源。移動用戶U在收到(3)的報文后,可以實現對移動服務提供商的身份認證。用戶U根據服務提供商的自身信息IDV以及(3)中的報文相關信息對(3)的報文的第一部分信息進行驗證,因為信息中包含提供商身份信息,并且還有TTP提供的時戳,攻擊者很難進行重放和并行會話攻擊。同樣,移動服務提供商也可以根據(2)的報文和(4)的報文對用戶認證。移動服務提供商V首先根據(2)的報文通過TTP得到用戶的長期化名Alias,在接收到(4)的報文后,可根據兩次用戶長期化名以及會話密鑰等信息完成用戶認證。在認證過程中,一旦某一步的多個報文中出現相同的時戳信息或者雜湊值比對出錯,說明存在入侵者,協(xié)議自動終止。
(4)匿名性。用戶U在整個認證協(xié)議過程中只使用了自己的長期化名Alias,其身份信息IDU只有用戶U和TTP知道,而任何移動服務提供商V只能得到用戶的長期化名,這使得協(xié)議可以抵抗針對某一用戶的拒絕服務攻擊。
本文基于公鑰密碼體制設計的一種適合于移動通信的認證與密鑰協(xié)商協(xié)議充分考慮了移動終端計算能力弱的特點,將復雜的數字簽名與公鑰加密算法用雜湊函數替代,大大減少了移動終端的計算負荷,降低了計算復雜度,同時在密鑰協(xié)商過程中有效地避免了會話密鑰在協(xié)議中的傳送,具有較高的安全性。
參考文獻
[1] STEINER J,NEUMAN C, KERBEROS S? J. All auth-entication service for open network systems[C].Proceedings of the USENIX Winter Conference,1988:191-202.
[2]?李明柱,李志江,楊義先.移動通信增值服務認證和支付研究[J].通信學報,2003,24(4):123-127.
[3]?王育民,劉建偉.通信網的安全——理論與技術[M].西安:西安電子科技大出版社,1999.
[4]?萬仁福,李方偉,朱江.一種適用于移動環(huán)境的認證和支付協(xié)議[J]. 電子與信息學報,2005,27(3):498-501.
[5]?MUHAMMAD S, FURQAN Z, GUHA R K. Designing authentication protocols: Trends and Issues[C].Proceedings of the International Conference on Networking, International Conference on Systems and International Conference on Mobile Communications and Learning Technologies,2006:76-76.

