鄭曉麗,姜迪剛
(軍事體育進修學院,廣東 廣州 510500)
目前國內(nèi)外大多數(shù)移動 IP注冊協(xié)議都采用對稱密碼體制和基于證書的公鑰密碼體制相結(jié)合的方式來實現(xiàn)移動實體之間的相互認證[1-5]。為了克服采用基于證書的公鑰密碼體制帶來的繁瑣的證書管理問題,本文針對IPSec協(xié)議的不足,通過將無證書公鑰技術(shù)融入IKEv2協(xié)議[6],形成了一種新型的IPSec接入認證方法,實現(xiàn)了在移動IPv6網(wǎng)絡(luò)環(huán)境下移動節(jié)點MN對代理的安全注冊。本文提出的移動IP注冊協(xié)議能達到以下目的:
①移動實體之間的相互認證,注冊消息的完整性保護和新鮮性保護,用戶匿名性及共享密鑰的安全協(xié)商和動態(tài)更新等。
②使用無證書公鑰密碼體制提供注冊協(xié)議的可擴展性。
③提高注冊協(xié)議的效率,使最小化協(xié)議的注冊延遲。
④能離線計算一些合適的值,以減少協(xié)議的處理時間。
IPSec是一種協(xié)議套件,為了實現(xiàn)由 IPSec體系描述的各種能力,這些協(xié)議相互交互,并緊密地結(jié)合在一起。IPSec是一個開放標準的框架,用以保證IP網(wǎng)上私有通信的安全。IPSec提供了網(wǎng)上數(shù)據(jù)的完整性,可靠性和保密性。IPSec運行時,連接終端直接提供安全措施。傳輸時,只有IP負載被加密,IP頭保持原樣。
IPSec協(xié)議由AH(驗證頭)、ESP(封裝安全載荷)、IKE(Internet密鑰交換)、ISAKMP/ Oakley以及轉(zhuǎn)碼組成。IPSec各組件之間的交互方式,其安全體系架構(gòu)如圖1所示。
①AH:對IP頭和IP包中負載的鑒別。這是通過在共享密值(shared secret value)中使用帶主鍵的哈希運算來實現(xiàn)的。
②ESP:提供在IP層的負載加密。如果使用可選的完整性檢查值(ICV),還可提供鑒別功能。如果使用鑒別功能,ICV的值在加密完成后被計算。
ESP并不鑒別IP頭。鑒別功能在保護數(shù)據(jù)負載的同時通過保護IP頭中不變數(shù)據(jù)也提供了對IP頭的保護。IPSec協(xié)議可通過 AH和 ESP協(xié)議來提供IP層的安全服務。所提供的安全服務包括訪問控制、無連接完整性、數(shù)據(jù)鑒別、防止重放和加密。
③IKE:可為 IPSec協(xié)議生成密鑰。針對需要密鑰的其它協(xié)議,亦可用I K E來協(xié)商密鑰。Internet上有許許多多要求安全服務(比如保障數(shù)據(jù)的完整性)的協(xié)議,以便保護它們的數(shù)據(jù)。
④策略:是一個尚未成為標準的組件,它決定兩個實體之間能否通信。
圖1 IPSec 安全體系架構(gòu)
當路由收到一個數(shù)據(jù)包時,它將檢查安全策略以決定是否為此數(shù)據(jù)包提供保護措施。通過IPSEC,可利用access-list來定義何種類型的數(shù)據(jù)應該受保護。如果流量和訪問表相匹配,則此流量將被定義過的安全協(xié)議所保護。
根據(jù)己定義過的策略,路由器決定何種安全服務被用于此數(shù)據(jù)包,并決定IPSEC隧道端點所使用的地址。然后路由器檢查是否已存在一個 scurity association。如果沒有 security association存在,路由器將同與之相連的對等體協(xié)商一個。為此,IKE被用來在2臺路由器之間建立一個提供驗證的安全通道,在此通道之上進行IPSEC security association的協(xié)商。
IPSEC:security association通過安全通道被協(xié)商。發(fā)起會話的對等體將發(fā)送其配置好的 ISAKMP策略給遠程對等體。在此策略中包含了定義了的加密算法、哈希算法、驗證方法、Diffe-Hellman生存期。在路由器上使用 show crypto isakmp policy就能夠看到此策略。
策略統(tǒng)一后,IKE將結(jié)束協(xié)商進程,一個 security association將被創(chuàng)建。它被用來記錄所有與某一IPSEC通信會話相關(guān)的細節(jié)。此security association通過將一個被稱為安全參數(shù)索引(SPI)的隨機數(shù)與目標IP地址的組合來唯一確定。
一旦建立好,security association被用于所有與access-list相匹配的流量,正是此access-list導致了初始的協(xié)商。SA是單向性的,每一個會話只需要2個SA。當處理進出對等體的流量時,相應的SA被使用。每個SA都有一個與協(xié)商值相等的生存期。SA過期后,新的SA將被產(chǎn)生。
無證書公鑰體制(CL-PKC),既不需要用證書來保證公鑰的真實性,也不會出現(xiàn)密鑰托管問題。在CL-PKC中,一個用戶的私鑰分2個步驟產(chǎn)生:
①KGC根據(jù)用戶A的身份信息標志符IDA和他的主密鑰s計算出部分私鑰DA并通過秘密的可靠信道發(fā)送給用戶。KGC必須確保將部分私鑰安全地發(fā)送給用戶A。
②用戶將收到的部分私鑰 DA和某個只有用戶自己知道的秘密值xA組合從而產(chǎn)生實際的私鑰SA。這樣,KGC就不知道用戶的私鑰了,也就避免了基于身份的密碼系統(tǒng)中的密鑰托管問題。
用戶的公鑰不再根據(jù)用戶的身份來計算,而是用戶利用KGC公開的系統(tǒng)參數(shù)和他的秘密值產(chǎn)生的。所以,采用無證書密碼系統(tǒng)的簽名機制中,用戶必須將其公鑰附加在簽名消息中提供給請求者,或者將公鑰發(fā)送給KGC,由KGC統(tǒng)一保管用戶的公鑰,當其他用戶之間需要通信時,便向 KGC申請獲得對方的公鑰,之后再進行通信。
無證書的公鑰體制的優(yōu)點:
①由于CL-PKC不需要證書來使用戶對公鑰產(chǎn)生信任,而是通過內(nèi)在的方式加以實現(xiàn),所以它消除了傳統(tǒng)的基于證書的 PKC中使用證書所引發(fā)的許多問題:與證書相關(guān)的冗余不再存在,使得CL-PKC的存儲和通信帶寬較低,節(jié)省了開銷;不需要在使用公鑰前驗證證書,減少了計算量,提高了效率[8]。
②與ID-PKC一樣,用戶的私鑰可以在他的公鑰生成并使用后再確定。而且由于 CL-PKC方案與基于雙線性對的ID-PKC方案有密切聯(lián)系,任何支持基于雙線性對的ID-PKC方案的基礎(chǔ)設(shè)施都可以用于支持CL-PKC方案,即這兩種方案可以很方便地共存。
③CL-PKC是介于傳統(tǒng)的公鑰體制與ID-PKC之間的一種公鑰密碼學,它的思想不僅兼有兩者的優(yōu)點,還基本上克服了兩者的缺點,因而特別適合于無法接受密鑰托管但是又難以維持整個PKI負擔的情況。
無證書的公鑰體制的缺點:
①由于公鑰是由秘密值和 ID計算得出的,其他用戶并不能一目了然的獲得對方的公鑰,必須向KGC申請才能獲取對方的公鑰,增加了復雜度。
加強縣鄉(xiāng)人大工作和建設(shè)是堅持和完善人民代表大會制度、加強基層國家政權(quán)建設(shè)的可靠保證。在中國特色社會主義進入新時代這一新的歷史條件下,縣鄉(xiāng)人大只有與時俱進、創(chuàng)新發(fā)展,才能為社會主義民主法治建設(shè)作出新的更大貢獻。
②無證書公鑰體制是近幾年才發(fā)展起來的,并沒有完整的理論體系,所以存在著一些潛在的安全威脅。
無證書公鑰密碼體系的 MN與 HA的認證過程的設(shè)計如下:
①MN開機后選擇隨機數(shù)Ni,向HA發(fā)送{IDMN,Ni,SAi1,KEi}||SigMN等注冊消息。
②HA收到注冊消息后,向KGC申請獲取MN的公鑰,同時驗證MN的身份IDMN和所收到消息消息簽名SigMN,再由HA選擇隨機數(shù)Nr,向移動節(jié)點MN發(fā)送{IDHA,Ni,Nr,SAr1,KEr}||SigHA消息。
③MN收到上述消息后,向KGC申請獲取HA的公鑰RHA,對HA的身份IDHA和所收到消息的簽名SigHA驗證后,根據(jù)KEr計算MN與HA之間的共享密鑰SK,并利用共享密鑰SK加密{IDMN,AUTH,SAi2,SAis}消息,再次發(fā)送給HA。
④HA在收到被加密的消息后,利用共享密鑰對其進行解密,經(jīng)過AUTH驗證,使用共享密鑰加密{IDHA,AUTH,SAr2,SArs}消息后,再發(fā)送給MN。
無證書公鑰密碼體系的 MN與 FA的認證過程的設(shè)計如下,其中包括MN向家鄉(xiāng)代理的綁定更新:
②FA收到消息后,從KGC獲取MN的公鑰RMN,驗證IDMN和所收到消息的簽名,然后FA將HoAMN與CoAMN綁定并緩存,再選擇隨機數(shù) Nr,向 MN 發(fā)送{IDFA,Ni,Nr,SAr1,KEr}||SigFA消息。
③MN收到消息后,從KGC獲取FA的公鑰RFA,驗證IDFA和所收到消息的簽名SigFA,根據(jù)KEr計算出MN與FA之間的共享密鑰SK,再利用共享密鑰SK加密{IDMN,AUTH,SAi2,SAis}消息,發(fā)送給FA。
④FA對收到的加密消息利用共享密鑰 SK解密,經(jīng)過AUTH,驗證,使用SK加密{IDFA,AUTH,SAr2,SArs}消息,再次發(fā)送給MN。
⑤MN向HA發(fā)送綁定更新消息FBU,該消息使用MIPSec/SAMN-HA保護。
⑥HA向MN返回綁定確認消息BAck。
公鑰運算次數(shù):
此協(xié)議無論MN是在本地還是在外地向HA注冊,都只進行了2次公鑰的運算,即前兩次交互時的簽名算法。其后的交互均用共享密鑰SK進行保護。
MN的計算量:
①計算簽名所需的私鑰與公鑰。
②驗證HA/FA的簽名和IDHA/IDFA。
③計算與HA/FA之間的共享密鑰。
HA/FA的計算量:
①計算簽名所需的私鑰和公鑰。
②驗證MN的簽名和IDMN。
③計算共享密鑰SK。
④對AUTH進行驗證。
協(xié)議的交互次數(shù):
此協(xié)議與IKEv2原始協(xié)議的交互次數(shù)相同(即本地注冊4次、外地注冊6次),只是針對每一次交互做出了相應地修改。
在IPv6、IPSec安全協(xié)議和近幾年興起的無證書公鑰體系的基礎(chǔ)上,提出了一種在移動 IPv6環(huán)境下的注冊認證方法。這一協(xié)議針對IPSec協(xié)議的不足,通過將無證書公鑰技術(shù)融入IKEv2協(xié)議,形成了一種新型的IPSec接入認證方法,實現(xiàn)了在移動IPv6網(wǎng)絡(luò)環(huán)境下移動節(jié)點MN對代理的安全注冊。
[1] ZHANG L, ZHANG F T, ZHANG F G. New Efficient Certificateless Signature Scheme[C]. Denko M. LNCS 4809: EUC Workshops 2007.Berlin: Springer-Verlag, 2007:692-703.
[2] ZHANG Z, FENG D. Key Replacement Attack on a Certificateless Signature Scheme (Cryptology ePrint Archive) [DB/OL].(2006-04-03)[2007-07-20]. http://eprint.iacr.org/2006/453.pdf.
[3] JOHNSON D, PERKINS C, ARKKO J. Mobility Support in IPv6[DB/OL].(2006-2-24) [2007-01-20]. http://rfc.sunsite.dk/rfc/rfc3775.html.
[4] CHOI K Y, PARK J H, HWANG J Y, et al. Efficient Certificateless Signature Schemes// Katz J. LNCS 4521: ACNS 2007. Berlin:Springer-Verlag, 2007:443-458.
[5] YAP W, HENG S, GOI1 B. An Efficient Certificateless Signature Scheme[C]. Zhou X. LNCS 4097: EUC Workshops 2006. Berlin:Springer-Verlag, 2006:322-331.
[6] 藺萌.WCDMA系統(tǒng)安全機制研究[J].通信技術(shù),2007,40(04):51-53.
[7] 鄭曉麗,姜迪剛.基于無證書公鑰密碼體制的密鑰管理[J].通信技術(shù),2010,43(07):95-97.
[8] 鄭曉麗.軍隊檔案網(wǎng)絡(luò)信息安全現(xiàn)狀及對策[J].通信技術(shù),2011,44(01):71-72.