孟光勝 賀學劍
摘要:本文根據網格計算的特點,在現有的網格安全認證模型的基礎上,提出了一種基于X.509和Kerberos雙協議混合認證模型,該模型能有效的克服現有模型的不足。
關鍵詞:網格;網格安全;網格認證;數字證書;模型
中圖分類號:G202文獻標志碼:A文章編號:1002-2589(2009)06-0060-02
一、網格安全的概念及目標
(1)保密性:通過對數據進行加密,使得只有擁有密鑰的合法用戶才能訪問,而未經授權者不能訪問數據。這樣,即使未授權者拿到數據的加密文件,也不可能看到其明文。(2)完整性:保證信息在傳輸或者存儲過程中沒有被篡改、破壞或丟失。(3)身份鑒別:驗證通信對象或資源訪問者邏輯上的身份證明是否與其真實身份相符合,從而防止合法用戶被冒名頂替。(4)授權:當驗證完用戶的身份屬實后,根據其身份賦予相應的權限,使得用戶可以在不超出權限的情況下訪問資源或執行操作。(5)反否認:保證信息的發布者就是其本人,而不是其他人通過假冒其身份發布虛假信息,另一方面也保證信息發布者不能抵賴,信息的真正發布者只能是信息發布者本人而不可能是其他人。(6)可用性:保證系統或資源不會因為遭受非法攻擊(比如病毒等)而造成系統癱瘓或資源的無法使用。
二、網格認證概述和數字證書
(1)鑒別或驗證一個用戶的身份。(2)偷聽:如何阻止別人在通信線路上對信息進行偷聽?(3)口令管理;如果我們正在訪問多個系統,每個系統是否都保留了用戶ID和口令的副本呢?每個存儲認證信息的數據庫都是系統安全漏洞的目標。而且,每當我們需要進行操作的時候,是否都需要提供口令呢?(4)重放:有人可以當認證信息在網絡中傳輸的時候對它進行復制,即使這些信息經過了加密,然后在以后進行重放,從而獲得不正當的訪問。(5)信任:認證是否應該是單方面的呢?或者用戶是否也應該檢驗和相信使用的服務是合法的?集中系統信任它自己;分布式系統必須尋找一個方法來信任其他系統。
網格認證需要有一個認證中心CA,也即是認證機構,是一個負責發放和管理數字證書的權威機構。它為各個實體頒發電子證書,即對實體的身份信息和相應公鑰數據進行數字簽名,用以捆綁該實體的公鑰和身份,以證明各實體在其功能上身份的真實性,并負責檢驗和管理證書。CA系統能為信息安全提供有效的、可靠的保護機制,提供網上身份認證服務,提供信息保密性、數據完整性以及收發雙方的不可否認性服務。
數字證書身份認證是基于國際PKI標準的網上身份認證系統,數字證書相當于網上的身份證,它以數字簽名的方式通過第三方權威認證CA有效地進行網上身份認證。幫助各個實體識別對方身份和表明自身的身份,具有真實性和防抵賴功能。與物理身份證不同的是,數字證書還具有安全、保密、防篡改的特性,可對企業網上傳輸的信息進行有效保護和安全的傳遞。數字證書的格式一般采用X.509國際標準,它是目前應用范圍最廣泛的一種證書,X.509證書實現了身份的鑒別和識別(認證)、完整性、保密性以及不可否認性等安全服務。Kerberos是MIT為分布式網絡設計的可信第三方認證協議,起著可信仲裁者的作用。Kerberos在分布式網絡環境中具有比較強的安全性,能防止攻擊和竊聽,能提供高可靠性和高效的服務,具有透明性(用戶除了發送Password外,不會覺察出認證過程),可擴充性好。它與授權機制相結合。實現了一次性簽放的機制,并且簽放的票據都有一個有效期,支持雙向的身份認證,即服務器可以通過身份認證確認客戶方的身份,而客戶如果需要也可以反向認證服務方的身份,支持分布式網絡環境下的認證機制,通過交換“跨域密鑰”來實現。
三、網格認證模型的建立與研究
目前認證系統模型主要有三種:集中式層次認證模型,多CA結構的模型和混合交叉認證模型。由于網格計算環境因其自身的特點,導致大量動態用戶的產生。如果使用集中式CA模型或多CA結構的模型,證書的管理會比較復雜。即便是采用集中式模型的統一管理結構,其證書數據量和更新量都是非常龐大的。而采用交叉認證模型,在路徑選擇上將會遇到很大的問題,如果數量眾多的動態用戶在每次接人時都進行一次路徑匹配,其效率之低將是無法忍受的。據此,本文提出了一種雙協議(X.509和Kerberos)混合認證模型。
在此模型中,終端用戶證書的頒發和管理類似于集中式模型,有一個獨立的認證中心進行頒發,并最終上溯到一個根認證中心,用戶所信任的也就是這個根認證中心,這里稱其為二級信任域。網格環境中數量眾多的二級信任域按照不同的證書策略進行歸類,組成不同的策略域組合,根據網格應用的特點,當有新的動態用戶加入時,根據其申請證書而獲得的權限等級將其劃分到不同的策略域中。由策略服務器和頂級的一級信任域連接。一級信任域不參與終端用戶和中間層CA的證書頒發和管理工作,而只負責對二級信任域進行管理。由于此模型中CA鏈是固定的,系統可以在策略域中將用戶匹配到一個CA中作為其下層終端并進行管理。這樣既避免了交叉認證中復雜的路徑選擇,又具備了集中式認證的高可信度、終端用戶對資料保有量低等優點。對于一級管理域,因為只需要管理二級管理域(即不同策略的CA),所以可以采用Kerberos票據模式進行管理。這樣可以使網格環境中各個節點之間的對等連接變得安全,從而能更好地保護網格用戶以及應用程序免遭惡意或拙劣代碼的侵害。
(一)混合認證模型二級信任域框架與功能設計
二級信任域模型框架包括web服務器、CA數據庫以及CA服務器。此外,為了給策略域中證書的使用提供更方便的服務,專門設計了一個在線證書服務器系統(Online Certifi-care Server,簡稱OCS)。
其中,Web服務器負責接收客戶申請信息、檢查用戶信息以及證書下載、證書查詢、CRL下載以及證書認證等與終端用戶交互的功能。對普通用戶提供了統一的服務平臺。在線證書認證服務器OCS為整個證書域的用戶提供了方便的證書認證服務,簡化了證書的使用。它提供了三種證書認證方式。即本地認證、實時在線認證和非實時在線認證,滿足了不同用戶的認證要求。OCS數據庫和CA數據庫共同構成認證支持數據庫。CA服務器是整個系統中最重要的部分,它完成證書的簽發以及其他所有的設計證書管理的功能。CA數據庫是整個系統中數據存儲和交互的核心部分。
(二)CA sub-system主要功能設計
用戶通過Web服務器提交信息后,用戶服務器檢查用戶提交的信息合法后,會將數據提交到CA數據庫等待CA服務器的簽發。CA服務器定期檢查(或人工檢查)CA數據庫中是否有新的用戶請求。如果有,CA服務器則執行簽發證書的一系列檢查和操作,直至完成最后證書簽發,然后將證書、相關的私鑰以及其他用戶信息保存在CA服務器中。用戶通過Web服務器查詢到用戶證書已經簽發后,就可以通過Web服務器在線下載證書。當然,如果為了安全需要,可以選擇IC卡或者USB Key等其他物理方式保存證書和保證私鑰發放的安全性。認證中心CA作為可信的第三方權威機構,按照一定的安全策略為實體(下層CA或者終端用戶)簽發實體證書、CRL證書,對實體的證書進行公證。其功能和服務主要包括以下方面:
(1)證書申請和證書審核服務;(2)各種證書管理服務;(3)CRL服務;(4)密鑰管理服務;(5)系統審核服務;(6)客戶端模塊設計和通用接口設計。
CA系統按照功能可分為以下幾個模塊:系統配置模塊、證書管理模塊、證書和CRL發布模塊、輸入/輸出模塊以及在線證書查詢模塊等。
證書管理模塊是整個CA認證系統結構中的核心模塊,它完成了幾乎所有的證書管理工作。所有的證書請求、證書和證書注銷列表均保存在系統內部數據庫中,同時可以通過發布模塊將證書和CRL發布到其他證書庫中。
四、總結
網格作為一種全新的技術,有著廣泛的前景和發展空間。作為網絡安全的第一道防線,某種程度上也是最重要的一道防線,認證技術受到普遍關注。由于現有的認證模型都存在這樣或那樣的問題,不適用于網格計算環境,而本文提出的一種基于X.509和Kerberos雙協議的混合認證模型,能有效的克服現有模型的不足。
(責任編輯張一寧)