朱婷鴿
[摘要]提出一種將主動網絡劃分成不同的域,在每一個域中設置代理,由代理出具主動包進入別的域的證書的新型主動網絡安全模型。最后,與逐跳相比較看出,代理的引入節約包的傳送時間、空間開銷以及計算開銷。
[關鍵詞]主動網 安全 代理 證書 逐跳
中圖分類號:TP3文獻標識碼:A文章編號:1671-7597(2009)0910068-02
一、引言
在傳統網絡中,交換設備以及網絡支持的協議和提供的服務都是預先固定的,已經越來越滿足不了人們對個性化網絡服務的需求,為了解決這個問題,美國軍方高級研究部首先提出了AN(Active Networks,主動網)的概念[1]。它是由一組稱為主動節點的網絡元素構成,這些節點不僅具有傳統的存儲轉發功能,同時還有計算能力。主動網的基本目的之一是允許用戶動態的安裝自己的代碼到網絡節點上,以實現用戶定制的服務。與傳統網絡相比,主動網更具有靈活性,但是它的安全性比傳統網絡要求更高。這是因為當用戶代碼在節點上執行以完成用戶自己配置的協議或者別的服務時,要求節點分配一定的資源給他們,而這些資源可能是節點的關鍵資源,在代碼執行的同時,節點狀態被修改,用戶包對節點構成了一定的威脅;但是當代碼在節點執行的時候,節點也可以修改包內的信息,節點也對用戶包構成威脅。當然他們也都可能受到惡意者的攻擊。
本文提出將主動網絡劃分成不同的域,每個域是由具有相同的訪問控制策略和資源使用策略的節點組成,并且在每個域中設置一個代理;文中第二部分給出了主動網中域劃分的說明;第三部分說明了用戶包在網絡中的傳輸;第四部分與逐跳進行比較,得出引入代理的好處;最后一部分給出了結論。
二、主動網的安全模型
(一)主動網中域的劃分
主動網是由主動節點構成,對其進行域的劃分,簡單的說就是將網絡中的節點分成有著一定數量的網絡節點的多個組。本文是將一組有著相同訪問控制策略和資源使用策略的節點劃分在一個域中,域中設置代理,各個域中的代理之間有著高度的信任關系,也就是說他們出具的證書,別的域中的代理都會充分信任,代理之間是通過秘密通道來聯系。其功能分為兩部分,一是給本域用戶出具證書,二是對本域中的邊界路由器轉發過來的通行證進行驗證。由于代理出具的證書使得主動包可以進入別的域,所以代理在出具證書前要對用戶進行身份驗證。
代理與用戶之間的安全通信可以通過下面的兩種方式保證:
1.在域中有一個密鑰分配器,由它們負責提前分配密鑰給代理和域,即預共享密鑰。本域用戶與代理通信時,使用預共享密鑰與代理進行安全通信。當然這個密鑰必須定期更新,或者是在密鑰被盜的情況下請求更新。同時,在與本域代理通信的時候還必須提供身份證明,這樣,即使密鑰被盜,竊密者也不能從本域代理那得到證書。
2.代理和用戶之間并沒有預共享密鑰,通信時再協商。對于這種方式來說,代理與用戶之間采用公鑰密碼體制來進行安全通信,用戶使用自己的密鑰對發送的請求進行加密,代理使用用戶的公鑰對消息進行解密。在用戶向代理發送信息的同時,也就向代理表明了身份,接著他們之間可以協商會話密鑰,建立了會話密鑰后,就可以利用此會話密鑰進行安全通信。
對于以上兩種方式來說,還有可能受到重放攻擊,因此本域用戶和代理相互通信時,在發給對方的信息中加入一個隨機數,這樣可抵御重放攻擊。
當本域用戶之間進行通信時,先協商會話密鑰,協商方式根據具體情況而定,利用會話密鑰,他們之間進行安全、直接的通信。本域用戶和域外用戶通信時,首先請求本域代理出具一張進入別的域通行證。對于一個域來說,在它的范圍內的用戶必須完全信任它,如果域的范圍劃分的比較大的話,用戶都向一個代理發送請求,可能會產生瓶頸效應。對于這種情況,可以在域中設置子代理,由父代理授權子代理對用戶簽發通行證,每個子代理負責域中的一部分。
(二)主動包的傳輸
封裝用戶代碼的包在從終端用戶傳送進入主動網絡之前,為防止主動包傳輸過程中受到惡意攻擊,先進行安全處理。因此節點將收到的包送入特定的獨立EE(executable Environment)進行處理,可以避免主動代碼被其它惡意代碼攻擊。在此采用ANEP(Active Network Encapsulate Protocol,主動網封裝協議)[4]對數據包進行封裝,其中報文結構中的Type ID是代碼類型的標識,它決定了主動包被送入哪個EE。報頭中的字段定義了主動包內容中的協議、包的傳輸方式等。
1.確定路徑下,許多包的同時傳輸
當一個用戶要向網絡中發送主動包以實現自己定制的服務時,首先建立主動包被傳送的路徑。一旦路徑確定,包經過的域也就確定了。接著用戶使用與本域代理共享的會話密鑰向本域代理提交自己的身份證書,請求代理出具主動包傳送路徑上需要進入的域的證書,代理驗證用戶發來的身份證書,若通過驗證,則為用戶出具一份證書,當然,持有此證書并不是用戶可以在整個網絡中暢通無止,因為在代理出具的證書上,有著范圍的限制。
用戶從代理那獲得通行證后,接著將自己的身份證書及其通行證封裝在用戶包中,對要傳送的所有的包進行排隊,然后將它們包傳送進網絡中。持有了代理簽發的通行證,用戶可以進入通行證上所允許的域中。每次在進入一個新的域時,需要對用戶持有的通行證進行驗證(如圖1),當驗證通過后,驗證的節點提供一個已經驗證此包的證明,即在本域中對此包再次進行封裝,這樣別的節點檢測到這個證明以后,就不需要再對通行證進行驗證,只是進行證書的推進。在域內的節點上,需要對身份證書進行驗證,在用戶的身份證書上,有著其對資源訪問的優先級別。優先級別高的優先處理。當從這個域出去進入別的域的時候,丟掉此證明。

2.不確定路徑下,一個包的傳輸
單個包的傳輸和包流的不同在于不能明確知道自己在網絡中傳輸的路徑,對于某一特定應用來說,通信發起方不可能確定一個主動包將訪問到哪些節點,也就是說他不能確定要經過哪些域,這類應用有很多,例如移動代理類型的應用。對于這類包來說,建立路徑顯然是不現實的,此時,源端用戶可以向代理請求一個全網的通行證,持有此種通行證的主動包可以進入網絡中的任意一個域。當然并不是每一個用戶都可以得到進入全網的通行證,只有管理員級別的人才有請求獲得此種通行證的。管理員擁有著很高的級別,因此,當主動包到達節點后,對其進行優先處理。
信任度的傳遞使得代理將自己在網絡中的信任度傳遞給了自己所在域中的用戶,只有攜帶代理出具的通行證,主動包才可以進入網絡的一些域或者整個網絡。這也就是說,沒有通行證的主動包是不允許進入別的域中的,只有那些持有通行證的主動包才能進入別的域中,當然也只能是通行證上所允許的域。
對于網絡的節點來說,代理為他們的安全提供了有力的保證,同時節點不能依靠簡單的移去證書來修改包的傳送路徑,這是因為如果包內的證書被移去的話,尤其是證書,則主動包不能進入別的域中,若身份證書被移去的話,則收到此包的節點會丟掉此包。但是不能保證主動包被惡意節點篡改。為了避免目的端收到的是一個被篡改的主動包,因此,在包內提供一個逐跳的認證。這個認證可以通過源端與目的端之間共享的密鑰來完成。
三、與逐跳保護[2][3]的分析比較
主動包每經過一個主動節點,其包內代碼會被節點提取并且執行,在代碼執行的同時,節點的狀態和包內的信息都可能被修改。為了避免包和節點受到攻擊,人們采取了不同的措施對他們進行保護,逐跳保護就是其中最典型的一種。逐跳是指在主動包的傳輸過程中的節點到節點都要進行保護。這也就是說,當源端用戶建立路徑后,在包被傳送到網絡中的時候,源端必須與路徑上的每個節點建立安全關聯。與路徑上的每一節點進行安全關聯需要一定的時間和計算開銷,而且主動包內還必須攜帶每一節點的認證頭,這樣也增加了包的空間開銷。逐跳的安全性取決于密鑰的安全程度。
而基于代理的這種保護來說,如果源端用戶發出的包沒有攜帶本域代理出具的證書,那么這些包將不能進入別的域。只有當主動包攜帶代理出具的證書后,才能進入證書允許的域。用戶在進入一個新的域前,要對通行證進行驗證,一旦驗證通過,在域中將不再對其驗證,僅僅身份證書被驗證。與逐跳相比,節約了對包的認證時間,計算的開銷,同時由于包內不用帶每個節點的認證頭,節約了包的空間開銷(如表1所示)。

四、結論
本文將網絡劃分成好多個域,并且在每個域中設置一個代理。代理為主動包傳輸過程中的安全提供了有力的保證。與逐跳比較,代理的引入,節約了時間、計算以及包的空間開銷。
只有代理出具了證書的主動包才能進入別的域,這樣就遏制了一些惡意包非法進入別的域中,去攻擊域中的單元。所以說代理出具證書的過程對于保證網絡的安全來說是一個關鍵。當然節點也可能受到用戶包的非惡意損害,比如說代碼本身就有問題。對于這些問題我們可以在節點采取監控手段,來對其在節點的執行情況進行監控。主動網中的不安全因素很多,解決主動網的安全問題還需要付出更多的探索和研究,主動網的安全研究也會隨著探索和研究不斷完善。
參考文獻:
[1]D.L.Tennenhouse,J.M.Smith,W.D.Sincoskie,D.J.Wetherall and G.J.Minden.A Survey of Active Network Research.IEEE Communications Magazine,1997,Vol.35,No.1:p80-86.
[2]David L,Tennenhouse and David J,Wetheral.Towards an Active Network Architectrue.Computer communication Review,1996,Vol.26,No.2,P5-18.
[3]Suresh Krishnaswamy,Joseph B.Evans,Gary J.Minden.A Prototype Framework for providing Hop-by-Hop Security in an Experimentally deployed Active Network.2002 DARPA Active Networks Conference and Exposition. San Francisco:CA,May2930,2002,p216-223.
[4]D.Scott Alexander,Bob Braden,Carl A.Gunter,Alden W.Jackson,Angelos D.Keromytis,Gary J.Minden,David Wetherall.Active Network Encapsulation Protocol (ANEP).RFC DRAFT.1997.