??? 摘? 要: 移動IP注冊過程的安全,主要是通過認(rèn)證和消息完整性保護實現(xiàn)的,因此,密鑰的安全有效分發(fā)便成為保證注冊過程安全的關(guān)鍵。根據(jù)注冊過程中的密鑰要求,提出了基于Diffie-Hellman密鑰協(xié)商機制和橢圓曲線密碼算法的主密鑰" title="主密鑰">主密鑰分發(fā)方案,并運用SVO邏輯對該方案進行了安全性分行。分析結(jié)果表明,該方案實現(xiàn)了密鑰分發(fā)過程中雙方的身份認(rèn)證以及密鑰的確認(rèn)性和新鮮性。
??? 關(guān)鍵詞: 安全需求? 主密鑰? 橢圓曲線密碼? SVO邏輯
?
??? 現(xiàn)有的IP協(xié)議最初是為固定網(wǎng)絡(luò)設(shè)計的,并不支持主機的移動接入。IETF(Internet Engineering Task Force)為了解決移動主機" title="移動主機">移動主機訪問網(wǎng)絡(luò)的問題,使IP網(wǎng)絡(luò)支持漫游功能,制定了移動IP(Mobile IP)協(xié)議,它是Internet支持主機移動的網(wǎng)絡(luò)層解決方案。移動IP主機可以通過一個永久的IP地址連接到任何一個鏈路上,當(dāng)移動主機切換到新鏈路上時,仍然能保持正在進行的通信。
??? 移動IP定義了三個新的實體[1]:移動節(jié)點" title="移動節(jié)點">移動節(jié)點 MN(Mobile Node)、家鄉(xiāng)代理HA(Home Agent)和外地代理FA(Foreign Agent)。移動IP中的安全威脅很大一部分來自于移動節(jié)點向家鄉(xiāng)代理的注冊過程。在注冊過程中,攻擊者可以通過向家鄉(xiāng)代理發(fā)送偽造的注冊請求,把自己的IP地址當(dāng)作某個移動節(jié)點的轉(zhuǎn)交地址。注冊成功后,發(fā)往該移動節(jié)點的消息均由攻擊者接收,而真正的移動節(jié)點卻被拒絕服務(wù)。攻擊者還可以通過竊聽會話,截取數(shù)據(jù)包,把一個有效的注冊請求信息儲存起來,然后利用儲存的注冊請求向家鄉(xiāng)代理注冊偽造的轉(zhuǎn)交地址。因此,注冊過程中移動用戶認(rèn)證、消息的完整性保護是移動IP安全的核心問題之一。
1 移動IP注冊過程的安全分析
1.1 安全威脅和解決措施
??? 在移動IP協(xié)議中,移動節(jié)點向家鄉(xiāng)代理注冊需要通過哈希函數(shù)對注冊信息進行計算,得到一個定長的信息摘要,并將這個摘要添加到注冊消息的認(rèn)證擴展域中,產(chǎn)生一個注冊消息,然后再由移動節(jié)點將這個消息發(fā)送給家鄉(xiāng)代理。R.Molva、Stuart Jacobs等人曾對注冊過程中移動用戶的認(rèn)證方法[2]和移動IP的安全性[3]進行了討論,指出用認(rèn)證機制來保護移動IP的安全的前提是移動節(jié)點和家鄉(xiāng)代理之間共享密鑰消息。
??? 在移動IP環(huán)境中,移動主機大多數(shù)運行于無線環(huán)境下,無線鏈路的特點是帶寬低、誤比特率高。因此在無線環(huán)境下不適合一次性分配大量的密鑰,一般是分發(fā)少量的主密鑰,通過對主密鑰進行計算,產(chǎn)生一些子密鑰,這些子密鑰被用于加密或身份認(rèn)證的系統(tǒng)密鑰。因此主密鑰的安全是整個系統(tǒng)的安全基礎(chǔ)。在移動IP環(huán)境中,主密鑰的分發(fā)是通過移動節(jié)點和家鄉(xiāng)代理進行密鑰協(xié)商完成的。
1.2 主密鑰安全分發(fā)的要求
??? 移動IP的主密鑰保護著整個認(rèn)證過程,因此主密鑰的安全性顯得尤為重要。在本方案中,安全分發(fā)主密鑰應(yīng)滿足以下要求:
??? (1)通信實體之間的相互認(rèn)證:移動節(jié)點和家鄉(xiāng)代理雙方各自都要對對方的身份進行認(rèn)證,以證明對方的合法身份。
??? (2)密鑰確認(rèn)性:通過密鑰驗證,移動節(jié)點和家鄉(xiāng)代理都能證明雙方擁有相同的密鑰, 而且只有移動節(jié)點和家鄉(xiāng)代理知道該密鑰。
??? (3)密鑰的新鮮性:經(jīng)過協(xié)商生成的密鑰應(yīng)該具有新鮮性。新鮮性能保證密鑰的完美向前性。主密鑰只有移動節(jié)點和家鄉(xiāng)代理擁有,任何第三者都不能利用先前截獲的消息對其進行計算從而得到主密鑰。密鑰的新鮮性可以有效地防御重放攻擊,同時也保證了方案的完美向前性。
??? (4)安全方案運行的高效率:移動節(jié)點絕大多數(shù)運行于無線環(huán)境中,無線鏈路的帶寬比較低,同時移動節(jié)點的計算能力和存儲能力也十分有限,因此需要考慮方案在移動IP環(huán)境中的執(zhí)行效率。
2 安全分發(fā)主密鑰方案
??? 根據(jù)移動IP注冊過程的安全分析和安全要求,提出了基于Diffie-Hellman密鑰協(xié)商機制和橢圓曲線的可認(rèn)證密鑰協(xié)商的主密鑰分發(fā)方案。本方案在不需要第三方介入的情況下,通過空中下載方式為移動節(jié)點分發(fā)主密鑰。
??? 選取有限域Fq,在域上隨機生成一條橢圓曲線E(Fq),保證橢圓曲線群上的離散對數(shù)是難解的;然后選取點P作為基點,P的階數(shù)為n,n為大素數(shù),P公開。
??? 定義:zn是由模n剩余類構(gòu)成的集,則zn是一個阿貝爾群,若t+r=0modn,則稱r為t的逆元,記為r=-tmodn。在此,n是橢圓曲線E(Fq)上點P的階。
??? 方案的前提:MN和HA共享一個口令S,MN和HA計算兩個整數(shù)t和-t,t是根據(jù)預(yù)先設(shè)定的方法由S計算得到的,并假設(shè)由S只能得到惟一的t。
??? 安全分發(fā)主密鑰方案如圖1所示,具體描述如下:
?
??? (1)MN:選擇隨機數(shù)dA∈[1,n-1],計算QA=(dA+t)P,MN→HA:QA。
??? (2)HA:選擇隨機數(shù)dB∈[1,n-1],計算QB=(dB+t)P,Y=QA+(-t)P=dAP,KB=dBY=dAdBP和tKB=tdAdBP,HA→MN:QB,tKB。
??? (3)MN計算X=QB+(-t)P=dBP,KA=dAX=dAdBP,tKA和tdBP,驗證tKB是否等于tKA,如果驗證成功,MN→HA:tdBP。
??? (4)HA驗證tdBP,如果驗證成功,則通知MN。HA→MN:success。
??? 至此,移動節(jié)點和移動代理成功協(xié)商了主密鑰,K=KA=KB=dAdB P。
3 方案分析
3.1 形式化安全分析
??? 形式化的分析方法就是采用各種形式化的語言或者模型,為安全協(xié)議" title="安全協(xié)議">安全協(xié)議建立模型,并按照規(guī)定的假設(shè)和分析、驗證方法證明協(xié)議的安全性,這類方法中最著名的就是BAN類邏輯。SVO形式化驗證方法是在綜合和優(yōu)化BAN、GNY、AT、VO邏輯的基礎(chǔ)上提出來的,它提取了四種邏輯的主要特點,提出了惟一的、相對較為簡單的分計算模型形式化驗證方法。SVO仍屬于BAN類邏輯。
??? 在形式化語義方面,SVO邏輯對一些概念作了重新定義(有別于AT邏輯),從而取消了AT邏輯系統(tǒng)中的一些限制。SVO邏輯所用的記號與BAN邏輯、AT邏輯是相似的,仍用符號分別表示相信、接收到、發(fā)送過、剛發(fā)送過、管轄、擁有、新鮮與等價。另外,SVO邏輯還有自己所特有的12個符號。此外,SVO邏輯還有21條公理,用于邏輯推理過程。
??? 使用SVO邏輯對一個安全協(xié)議進行形式化分析的步驟如下:
??? (1)給出該協(xié)議的初始化假設(shè)集:即用SVO邏輯語言表示各主體的初始信念、接收到的報文、對所收到報文的理解和解釋;
??? (2)給出該協(xié)議可能或應(yīng)該達(dá)到的目標(biāo)集,即用SVO邏輯語言表示的一個公式集。
??? (3)在SVO邏輯中證明結(jié)論是否成立。若成立,則說明該協(xié)議達(dá)到了預(yù)期的設(shè)計目標(biāo),協(xié)議的設(shè)計是成功的。
??? 首先對安全分發(fā)主密鑰方案進行理想化:
???
??? 然后給出方案的初始化假設(shè)集,對各主體的初始信念、接收到的報文、對所收到報文的理解和解釋用SVO邏輯語音表示:
??????
?
??? 再給出方案的目標(biāo)集:
???
??? 目標(biāo)集(1)和(3)表明MN和HA都相信K是雙方確認(rèn)的共享的密鑰;(2)和(4)表明了密鑰的新鮮性。
??? 運用SVO的邏輯推理規(guī)則和21條邏輯公理進行推理,可以得到目標(biāo)集。因推理過程太長,在此省略了詳細(xì)的推理過程。
??? 結(jié)果分析表明,移動節(jié)點和家鄉(xiāng)代理都相信主密鑰K是適合他們雙方通信的確認(rèn)共享密鑰。K是確認(rèn)共享密鑰表明了雙方都相信自己擁有合法的密鑰,同時都相信雙方的身份,也就是在主密鑰協(xié)商下實現(xiàn)了雙方的身份認(rèn)證,最終擁有主密鑰的實體就是合法的移動節(jié)點和家鄉(xiāng)代理。協(xié)商的主密鑰具有新鮮性,即整個協(xié)商過程具有完美向前性,同時也能抵御重放攻擊。
3.2 方案的執(zhí)行效率分析
??? 本方案的主密鑰分發(fā)是基于橢圓曲線密碼系統(tǒng)的可認(rèn)證密鑰協(xié)商的。橢圓曲線密碼ECC(Elliptic Curves Cryptography)和傳統(tǒng)的公鑰" title="公鑰">公鑰密碼在移動環(huán)境下相比有很大的優(yōu)勢,這是本方案采用ECC的原因。160bit的ECC相當(dāng)于1024bit的RSA和DSA。同樣安全強度的ECC、RSA和DSA相比,ECC的計算開銷遠(yuǎn)小于其他密碼算法,使得ECC可以在很短的時間內(nèi)產(chǎn)生符合條件的密鑰,可以在ROM中執(zhí)行,不需要額外的硬件。其他公鑰體制由于產(chǎn)生密鑰所需的計算非常復(fù)雜,在計算能力受限的情況下很難產(chǎn)生合適的密鑰。當(dāng)傳送短消息時,ECC比其它公鑰算法節(jié)省帶寬。綜上分析,ECC與其他公鑰加密系統(tǒng)相比,能提供更好的加密強度、更快的執(zhí)行速度和更小的密鑰長度,在移動環(huán)境下,移動節(jié)點的計算能力比較弱,同時帶寬受限,對密碼算法要求計算量、存儲量、帶寬和時延比較小。因此ECC和傳統(tǒng)公鑰密碼相比較更適合于移動IP環(huán)境。
??? 本文提出的方案有效地解決了移動主機注冊過程中的主密鑰分發(fā)問題,滿足了注冊過程中主密鑰分發(fā)的安全要求,具有較高的安全性,并且在保證方案的安全性的基礎(chǔ)上減少了方案的運算開銷,具有良好的執(zhí)行效率。本方案分發(fā)的主密鑰通過計算可以產(chǎn)生用于移動IP注冊過程的認(rèn)證和消息完整性保護的子密鑰,可以有效地解決移動IP中的一些安全問題。
參考文獻
[1] RFC2002: IP Mobility Support. IETF, 1996.
[2] MOLVA R, SMAFAT D, TSUDIK G. Authentication of mobile users. IEEE,1994,(3):26.
[3] JACOBS S, CIRINCIONE G. Security of current mobile IP solutions. IEEE,1997,6:1122.
[4]?卿斯?jié)h.安全協(xié)議的設(shè)計與邏輯分析.軟件學(xué)報,2003,14:1300.
[5] 張險峰,秦志光,劉錦德. 橢圓曲線加密系統(tǒng)的性能分析. 電子科技大學(xué)學(xué)報,2001,(2):144.