PKI技術
為解決Internet的安全問題,世界各國對其進行了多年的研究,初步形成了一套完整的Internet安全解決方案,即目前被廣泛採用的PKI體系結構,PKI體系結構採用證書管理公鑰,通過第三方的可信機構CA,把用戶的公鑰和用戶的其他標識信息(如名稱、e-mail、身份證號等)捆綁在一起,在Internet網上驗證用戶的身份,PKI體系結構把公鑰密碼和對稱密碼結合起來,在Internet網上實現密鑰的自動管理,保證網上數據的機密性、完整性。目的及組成
從廣義上講,所有提供公鑰加密和數字簽名服務的系統,都可叫做PKI系統,PKI的主要目的是通過自動管理密鑰和證書,可以為用戶建立起一個安全的網路運行環境,使用戶可以在多種套用環境下方便的使用加密和數字簽名技術,從而保證網上數據的機密性、完整性、有效性,數據的機密性是指數據在傳輸過程中,不能被非授權者偷看,數據的完整性是指數據在傳輸過程中不能被非法篡改,數據的有效性是指數據不能被否認。一個有效的PKI系統必須是安全的和透明的,用戶在獲得加密和數字簽名服務時,不需要詳細地了解PKI是怎樣管理證書和密鑰的,一個典型、完整、有效的PKI套用系統至少應具有以下部分:
公鑰密碼證書管理。
黑名單的發布和管理。
密鑰的備份和恢復。
自動更新密鑰。
自動管理歷史密鑰。
支持交叉認證。
由於PKI體系結構是目前比較成熟、完善的Internet網路安全解決方案,國外的一些大的網路安全公司紛紛推出一系列的基於PKI的網路安全產品,如美國的Verisign, IBM ,Entrust等安全產品供應商為用戶提供了一系列的客戶端和伺服器端的安全產品,為電子商務的發展提供了安全保證。為電子商務、政府辦公網、EDI等提供了完整的網路安全解決方案。
PKI是一種新的安全技術,它由公開密鑰密碼技術、數字證書、證書發放機構(CA)和關於公開密鑰的安全策略等基本成分共同組成的。PKI是利用公鑰技術實現電子商務安全的一種體系,是一種基礎設施,網路通訊、網上交易是利用它來保證安全的。從某種意義上講,PKI包含了安全認證系統,即安全認證系統-CA/RA系統是PKI不可缺的組成部分。
PKI(Public Key Infrastructure)公鑰基礎設施是提供公鑰加密和數字簽名服務的系統或平台,目的是為了管理密鑰和證書。一個機構通過採用PKI框架管理密鑰和證書可以建立一個安全的網路環境。 X.509格式的證書和證書廢除列表(CRL); CA/RA操作協定; CA管理協定; CA政策制定。
屬性證書
X.509 V4增加了屬性證書的概念。提起屬性證書就不能不提起授權管理基礎設施(PMI,Privilege Management Infrastructure)。PMI授權技術的核心思想是以資源管理為核心,將對資源的訪問控制權統一交由授權機構進行管理,即由資源的所有者來進行訪問控制管理。與PKI信任技術相比,兩者的區別主要在於PKI證明用戶是誰,並將用戶的身份信息保存在用戶的公鑰證書中;而PMI證明這個用戶有什麼許可權、什麼屬性、能幹什麼,並將用戶的屬性信息保存在授權證書(又稱管理證書)中。
圖中顯示了PMI服務系統的體系結構。從圖中可以看出,PMI系統主要分為授權管理中心(又稱AA中心)和資源管理中心(又稱RM中心)兩部分。授權服務平台是授權管理中心的主要設備,是實現PMI授權技術的核心部件,主要為用戶頒發CA授權證書。
在PKI信任技術中,授權證書非常適合於細粒度的、基於角色的訪問控制領域。X.509公鑰證書原始的含義非常簡單,即為某個人的身份提供不可更改的證據。但是,人們很快發現,在許多套用領域,比如電子政務、電子商務套用中,需要的信息遠不止是身份信息,尤其是當交易的雙方在以前彼此沒有過任何關係的時候。在這種情況下,關於一個人的許可權或者屬性信息遠比其身份信息更為重要。例如,銷售商為了決定一筆訂貨是否可信,是否應該發貨給定貨人,他就必須知道定貨人的信用情況,而不僅僅是其名字。
為了使上述附加信息能夠保存在證書中,X.509 v4中引入了公鑰證書擴展項,這種證書擴展項可以保存任何類型的附加數據。隨後,各個證書系統紛紛引入自己的專有證書擴展項,以滿足各自套用的需求。然而,擴展項的引入在證書的互操作性、發放證書的許可權,以及證書的撤銷等方面帶來了許多問題。
因此,授權證書的合理性是簡單而引人注目的。既然不同的部門具有不同的發放證書許可權,而且在證書中最容易改變的信息是屬性信息,那么為什麼不把X.509 v3證書分拆成兩個不同的證書:一個是存放身份信息的公鑰證書;另一個是存放屬性信息的授權證書,這樣就可以極大地簡化發放證書的流程,並且在一定程度上解決了證書撤銷的問題。因為如果授權證書使用短有效期,那么它們就不需要被撤銷,而僅僅是過期作廢罷了!
漫遊證書
證書套用的普及自然產生了證書的便攜性需要,而到目前,能提供證書和其對應私鑰移動性的實際解決方案只有兩種:第一種是智慧卡技術。在該技術中,公鑰/私鑰對存放在卡上,但這種方法存在缺陷,如易丟失和損壞,並且依賴讀卡器(雖然帶USB接口的智慧型鑰匙不依賴讀卡器,但成本太高);第二種選擇是將證書和私鑰複製到一張軟碟備用,但軟碟不僅容易丟失和損壞,而且安全性也較差。
一個新的解決方案就是使用漫遊證書,它通過第三方軟體提供,只需在任何系統中正確地配置,該軟體(或者外掛程式)就可以允許用戶訪問自己的公鑰/私鑰對。它的基本原理很簡單,即將用戶的證書和私鑰放在一個安全的中央伺服器上,當用戶登錄到一個本地系統時,從伺服器安全地檢索出公鑰/私鑰對,並將其放在本地系統的記憶體中以備後用,當用戶完成工作並從本地系統註銷後,該軟體自動刪除存放在本地系統中的用戶證書和私鑰。
這種解決方案的好處是可以明顯提高易用性,降低證書的使用成本,但它與已有的一些標準不一致,因而在套用中受到了一定限制。筆者認為,在小額支付等低安全要求的環境中,該解決方案是一種較為適合的方法。
無線PKI(WPKI)
隨著無線通信技術的廣泛套用,無線通信領域的安全問題也引起了廣泛的重視。將PKI技術直接套用於無線通信領域存在兩方面的問題:其一是無線終端的資源有限(運算能力、存儲能力、電源等);其二是通信模式不同。為適應這些需求,目前已公布了WPKI草案,其內容涉及WPKI的運作方式、WPKI如何與現行的PKI服務相結合等。
WPKI中定義了三種不同的通信安全模式:
● 使用伺服器證書的WTLS CLASS2模式;
● 使用Client證書的WTLS Class3模式;
● 使用Client證書合併WMLScript的signText模式。
所謂的Class1、Class2及Class3是定義在WTLS標準中的安全需求,如表所示(見B11版,其中M表示強制必須要運行,O表示可選擇性運行)。
在證書編碼方面,WPKI證書格式想儘量減少常規證書所需的存儲量。採用的機制有兩種:其一是重新定義一種證書格式(WTLS 證書格式),以此減少X.509證書尺寸;其二是採用ECC算法,減少證書的尺寸,因為ECC密鑰的長度比其他算法的密鑰要短得多。WPKI也在IETF PKIX 證書中限制了一個數據區的尺寸。由於WPKI證書是PKIX證書的一個分支,還要考慮與標準PKI之間的互通性。