季曉玉 肖峰
大連醫科大學計算機教研室 遼寧 116044
PKI技術內容包括數字證書、公鑰密碼技術、認證中心、證書和密鑰的管理、安全代理軟件、不可否認性服務、時間戳服務、相關信息標準、操作規范等。其目的是通過管理密鑰和證書,為用戶建立一個安全、可信的網絡運行環境。PKI信任模型有很多種,但隨著應用對信任傳遞和管理需求的不斷增加,以前所采用的信任模型已經逐漸不能滿足需要,因此要對的信任模型作進一步的研究。
嚴格層次結構信任模型,整個信任模型是按層次樹狀分布的,所有其它的信任關系都源于根CA,把它作為“信任錨”。在根CA的下面是零層或多層的子CA。子CA可作為中間節點,再伸出分支,最后是樹的葉子,即終端實體。嚴格層次結構信任模型的主要優點有:結構簡單,具有較好的擴展性;證書管理容易,證書路徑較短,驗證路徑、查詢和建立信任關系非常容易。缺點主要是:需要單一的信任點,即根CA,在現實世界中很難確認一個單一信任點,且如果根CA出現信任問題,整個PKI體系的信任關系將全部無效。
網狀信任模型,也稱分布式信任模型,在該結構中,包含多個CA提供PKI服務,每個終端實體都信任其證書發放CA所簽發的證書,這些CA以點對點的方式互發證書。該模型的優點是結構靈活,擴展容易,單CA安全性的削弱不會影響到整個PKI域的運行,故障排除與恢復比較容易,頒發證書少,證書管理簡單容易,能夠很好地應用于域間互聯。缺點主要是:證書路徑的擴展與層次結構比較復雜,選擇證書路徑比較困難;當CA數量增多時,證書路徑相對較長,有可能形成一個無止境的證書環路,并且由于信任的傳遞而引起信任度的衰減。
信任列表是一種在應用層設置的動態二維控制列表,表中列有被信任的CA的根證書,每個CA自身可以是層次結構或網狀結構。該結構的最大優勢為單純性,減少了信任路徑尋找的復雜步驟。證書撤銷處理簡單,增加、刪除信任CA方便容易。存在的問題是:安全性較差,對于使用者來說,只是為了與列表中的CA的某些用戶溝通,因此對列表中的CA并無充分了解。信任列表結構本身無法適當處理列表上的某個已失效、不再運行的CA情況。
在以用戶為中心的信任模型中,用戶完全決定與其他用戶之間的關系,用戶通過親屬、朋友等關系網來建立信任關系網。這種模型的主要優點是:可操作性強,對用戶行為和決策充分依賴,具有很好的可擴展性,信任關系改變容易。缺點主要是:隨著信任關系的傳遞,信任度降低較快。
橋信任模型,它被設計成用來克服層次模型和網狀模型的缺點以及連接不同的PKI體系。一個單獨的CA,它與不同的信任域之間建立對等的信任關系。橋信任模型的優點是現實性比較強,它代表了現實中的證書機構間的相互關系,證書路徑比較容易發現,路徑長度比較短,可以用于比較廣的范圍。該模型的缺點主要是:實際應用中各方都信任的信任橋比較難統一。證書比較復雜,在大型的PKI系統中不適用。
為了研究的直觀性,現將這五種信任模型分別按照表 1中幾個方面加以比較。

表1 五種信任模型比較
從表1對五種信任模型各自優缺點的分析比較中可以看到,這五種信任模型都不能滿足我國全國范圍PKI建設的需求:嚴格層次結構、網狀結構和信任列表結構適用于小范圍,橋信任模型應用時受CA橋信任范圍的限制,以用戶為中心的信任模型僅適用于普通有PKI常識的用戶,而不能滿足大型機構甚至行業的安全性的要求。
由實際網絡結構的復雜性決定了單一的某一類信任模型不能滿足現實需要,通常采取混合信任模型來解決。將嚴格層次結構信任模型和網狀信任模型結合起來,就是混合信任模型。該模型分為兩個部分,一部分是在單一信任域內的信任結構,通常采用嚴格層次結構信任模型,另一部分是在多個信任域之間的信任模型,通常采用網狀信任模型。混合信任模型中有多個根 CA,所有非根 CA都采用從上到下的嚴格層次結構信任結構,根CA之間采用網狀結構進行交叉認證。在大型的域間采用網狀信任模型,雖然有著很好的靈活性和可擴展性,但同時也會帶來選擇證書路徑比較困難,證書路徑比較復雜及信任度降低的問題。
本文針對以上存在的問題,結合 Intranet的結構特點,對傳統混合模型進行了改進,提出建立一種 Intranet多級混合模型進行認證(如圖1)。

圖1 多級混合信任模型
圖1中CA1、CA2、CA3、CA4、CA5為各信任域的根CA,各域內部可以采取嚴格結構層次模型,網狀模型等任何模型進行認證,而在域間認證要求一個根CA只與它相鄰的其它兩個根CA進行交叉認證,并且所有的根CA之間的信任關系最終構成一個環形,即環形信任模型。它不像傳統混合信任模型中,域間要求采取網狀模型,各個根CA之間進行盡可能多的交叉認證,讓根 CA構建成網狀(虛線相連部分)。該模型的優點主要是證書路徑構建簡單,頒發證書數量減少,證書管理比較容易,擴展性比較好,適合于大中型企業Intranet上適用。
本文給出的 Intranet多級混合模型結合了多種模型的優點,在域內可以根據各自單位的性質和機構,采取不同的信任模型。而在域間采取環形信任模型,克服了網狀模型證書路徑復雜的問題,既減少了證書路徑和數量,又具有良好的可擴展性,是一種中等規模PKI系統的適用模型。信任模型可以直接進行構建,也可以在現在有模型基礎上進行改進。若Intranet為首次組建,各根CA之間相互獨立,不存在任何信任關系,則可以直接將各域構建成環形信任模型,在這種情況下應該著重考慮各域間的地理位置關系及各域內的用戶數量。首先按位置優先原則,將地理位置較近的CA兩兩進行互聯,最終便可組成一個環。若地理位置都差不多,則按照用戶數量優先的原則,將各域內的用戶數量按照大小進行排序,將域內用戶數量最大的和第二、第三連接為相鄰的節點,依次類推即可構造成一個環形信任模型。若對已存在的模型時行改進,則可以對各根CA間現有的證書數量和認證路徑進行分析比較,按照交叉認證的頻繁程度對各路徑賦予權值,構造一個帶權值的網狀圖,然后反向利用最小生成樹的思想,構造出一個最大生成環。具體方法即先將權重最大的路徑和兩個CA取出,再在剩余網狀圖中找出權重次高的邊和兩個CA并將其取出,若其中有一個CA己經是取出的兩個CA中的一個,則將其進行連接。依次進行,直到所有的點全部取出并調整為一個環。這樣交互頻率較高的CA都為環上的相鄰節點,經常產生的證書其認證路徑就較短,縮小了大量證書的認證路徑,同時也降低了信任度的衰減。
設在圖1中,用戶C21的證書由CA2頒發,用戶C5的證書由CA5頒發。用戶C21如果要獲得用戶C51的公鑰并保證用戶 C51的公鑰是可信的,就要在用戶 C21的信任錨CA2和用戶C51的信任錨CA5之間構造一條完整的證書路徑。在 Intranet多級混合信任模型中,路徑構建相當簡單,可分為兩部分,域內構建和域間構建。在域內采用的是原有的信任模型,在這里不再討論。在域間,以深度優先為例,只存在兩條CA2到CA5的路徑:
CA2<-> CA1<-> CA5
CA2<-> CA3<-> CA4<-> CA5
這樣,在路徑構建中就需要驗證兩條路徑:
CA21<->CA2<-> CA1<-> CA5
CA21<->CA2<-> CA3<-> CA4<-> CA5
通過簡單比較,CA21<->CA2<->CA1<->CA5 路徑長度較短,從而很容易就確立用戶間的信任關系。
Intranet多級混合信任模型在不改變原信任域信任模型的前提下,域間信任采取環形信任模型,較現有網狀信任模型在證書路徑構建上有了較大的提高。網狀信任模型中路徑的構建比較復雜,證書路徑過長,信任度衰減嚴重。任意兩個CA之間可能存在多條證書路徑,很容易出現死循環,使得證書驗證變得非常困難。而環形信任模型中,任意兩個CA之間只有兩條證書路徑,只需要一個二選一的判斷,構建簡單。N個CA組成的網狀模型,其交叉認證次數大于等于N,而N個CA組成的環只需要N個交叉認證,是網狀信任模型中的最小值,且從一個CA出發,不論從順時針或逆時針方向,回到自身的證書路徑都會經過所有的 CA,也就不會出現死循環的情況。環形信任模型中證書路徑有可能比網狀信任模型長,但都能控制在N/2之內,不會出現證書路徑過長的情況。在網狀信任模型中,單個CA的安全性被破壞不會影響到整個PKI體系,可直接將其隔離處理,剩下的CA仍舊組成網狀。但在環形信任模型中,一個CA被破壞雖不會影響到整個體系的安全性,但若將其隔離,則剩下的CA組成線性結構,會大大增加證書路徑構建和處理的難度。
本文對目前存在的幾種常用信任模型進行了研究分析,在分析各種模型優缺點的基礎上,針對 Intranet的實際,對混合模型進行了改進,建立了一個新的多級混合PKI信任模型,改進了傳統混合信任模型信任路徑構建較復雜,證書路徑過多過長以及信任關系減少的問題,使之成為了 Intranet中比較現實可行的實用信任模型方案。
[1]宮誠燁,周惠民.基于PKI的Intranet安全模型的分析和設計[J].微機發展.2004.
[2]袁鑫攀,張祖平.IP欺騙技術和防范方法[J].計算技術與自動化.2007.
[3]王尚平,謝小琢,張亞玲等.基于PKI的網絡考試安全機制研究及實現[J].計算機工程與應用.2008.
[4]史偉奇,張波云,段丹青.PKI多級信任模型的分析研究[J].網絡安全技術與應用.2004.
[5]Burr W E.Public Key Infrastructure(PKI)Technical Specifications: Part A-Technical Concept of Operations[Z]. Work-ing Draft TWG-98-59.Federal PKI Technical Working Group,1998.
[6]關振勝.公鑰基礎設施 PKI及其應用[M].北京:電子工業出版社.2008.
[7]RFC 2585,Internet X.509 public key infrastructure operational protocols:FTP and HTTP[S].
[8]龔傳,劉鵬,宗銳,伊英杰.公鑰基礎設施 PKI信任模型研究[J].計算機安全.2009.
[9]郭東軍.PKI體系中CA的設計和信任模型的研究[D].山東:山東大學.2007