公開密鑰體系

平台,目的是為了管理密鑰和證書。 (7)數字證書的歸檔。 另一個重要的概念是證書的撤消。

公鑰基礎設施PKI 簡介
摘要:本文簡介了當前廣泛用於解決電子商務中安全問題的PKI 技術。PKI(Pubic Key Infrastructure)是一種遵循標準的利用公鑰加密技術為電子商務的開展提供一套安全基礎平台的技術和規範。PKI 的核心組成部分CA( Certification Authority),即認證中心,它是數字證書的簽發機構。數字證書,有時被稱為數字身份證,是一個符合一定格式的電子檔案,用來識別電子證書持有者的真實身份。
關鍵字:公鑰基礎設施PKI 認證中心 CA 數字證書

一 PKI 簡介

隨著Internet 的普及,人們通過網際網路進行溝通越來越多,相應的通過網路進行商務活動即電子商務也得到了廣泛的發展。電子商務為我國企業開拓國際國內市場、利用好國內外各種資源提供了一個千載難逢的良機。電子商務對企業來說真正體現了平等 競爭、高效率、低成本、高質量的優勢,能讓企業在激烈的市場競爭中把握商機、脫穎而出。已開發國家已經把電子商務作為21 世紀國家經濟的增長重點,我國的有關部門也正在大力推進我國企業發展電子商務。然而隨著電子商務的飛速發展也相應的引發出一些Internet 安全問題。
概括起來,進行電子交易的網際網路用戶所面臨的安全問題有:
一,保密性 :如何保證電 子商務中涉及的大量保密信息在公開網路的傳輸過程中不被竊取;
二,完整性 :如何保證 電子商務中所傳輸的交易信息不被中途篡改及通過重複傳送進行虛假交易;
三,身份認證與授權:在電子商務的交易過程中,如何對雙方進行認證,以保證交易雙方身份的正確性;
四,抗抵賴 :在電子商務的交易完成後,如何保證交易的任何一方無法否認已發生的交易。
這些安全問題將在很大程度上限制電子商務的進一步發展,因此如何保證Internet 網上信息傳輸的安全,已成為發展電子商務的重要環節。
為解決這些Internet 的安全問題,世界各國對其進行了多年的研究,初步形成了一套完整的Internet 安全解決方案,即目前被廣泛採用的PKI 技術(Public Key Infrastructure-公鑰基礎設施),PKI(公鑰基礎設施)技術採用證書管理公鑰,通過第三方的可信任機構--認證中 心CA(Certificate Authority),把用戶的公鑰和用戶的其他標識信息(如名稱、e-mail、身份 證號等)捆綁在一起,在Internet 網上驗證用戶的身份。目前,通用的辦法是採用基於PKI 結構結合數字證書,通過把要傳輸的數字信息進行加密,保證信息傳輸的保密性、完整性,簽名保證身份的真實性和抗抵賴。

二 PKI 的基本定義與組成

PKI 的基本定義十分簡單,所謂PKI 就是一個用公鑰概念和技術實施和提供安全服務的具有普適性的安全基礎設施。PKI 是一種新的安全技術,它由公開密鑰密碼技術、數字證書、證書發放機構(CA)和關於公開密鑰的安全策略等基本成分共同組成的。PKI 是利用公鑰技術實現電子商務安全的一種體系,是一種基礎設施,網路通訊、網上交易是利用它來保證安全的。從某種意義上講,PKI 包含了安全認證系統,即安全認證系統-CA 系統是PKI 不可缺的組成部分。
PKI(Public Key Infrastructure)公鑰基礎設施是提供公鑰加密和數字簽名服務的系統或
平台,目的是為了管理密鑰和證書。一個機構通過採用PKI 框架管理密鑰和證書可以建立一個安全的網路環境。PKI 主要包括四個部分:X.509 格式的證書(X.509 V3)和證書廢止列表CRL(X.509 V2);CA 操作協定;CA 管理協定;CA 政策制定。一個典型、完整、有效的PKI 套用系統至少應具有以下五個部分;
1) 認證中心CA CA 是PKI 的核心,CA 負責管理PKI 結構下的所有用戶(包括各種應用程式)的證書,把用戶的公鑰和用戶的其他信息捆綁在一起,在網上驗證用戶的身份,CA 還要負責用戶證書的黑名單登記和黑名單發布,後面有CA 的詳細描述。
2) X.500 目錄伺服器 X.500 目錄伺服器用於發布用戶的證書和黑名單信息,用戶可通過標準的LDAP 協定查詢自己或其他人的證書和下載黑名單信息。3) 具有高強度密碼算法(SSL)的安全WWW伺服器 Secure socket layer(SSL)協定最初由Netscape 企業發展,現已成為網路用來鑑別網站和網頁瀏覽者身份,以及在瀏覽器使用者及網頁伺服器之間進行加密通訊的全球化標準。4) Web(安全通信平台) Web 有Web Client 端和Web Server 端兩部分,分別安裝在客戶端和伺服器端,通過具有高強度密碼算法的SSL 協定保證客戶端和伺服器端數據的機密性、完整性、身份驗證。
5) 自開發安全套用系統 自開發安全套用系統是指各行業自開發的各種具體套用系統,例如銀行、證券的套用系統等。完整的PKI 包括認證政策的制定(包括遵循的技術標準、各CA 之間的上下級或同級關係、安全策略、安全程度、服務對象、管理原則和框架等)、認證規則、運作制度的制定、所涉及的各方法律關係內容以及技術的實現等。

三 PKI 的原理

公鑰基礎設施PKI 的原理,顧名思義PKI 是基於公鑰密碼技術的。要想深刻理解PKI的原理,就一定要對PKI 涉及到的密碼學知識有比較透徹的理解。下面簡單介紹一下密碼學知識。對於普通的對稱密碼學,加密運算與解密運算使用同樣的密鑰。通常,使用的加密算法比較簡便高效,密鑰簡短,破譯極其困難,由於系統的保密性主要取決於密鑰的安全性,所以,在公開的計算機網路上安全地傳送和保管密鑰是一個嚴峻的問題。正是由於對稱密碼學中雙方都使用相同的密鑰,因此無法實現數據簽名和不可否認性等功能。而與此不同的非對稱密碼學,具有兩個密鑰,一個是公鑰一個是私鑰,它們具有這種性質:用公鑰加密的檔案只能用私鑰解密,而私鑰加密的檔案只能用公鑰解密。公鑰顧名思義是公開的,所有的人都可以得到它;私鑰也顧名思義是私有的,不應被其他人得到,具有唯一性。這樣就可以滿足電子商務中需要的一些安全要求。比如說要證明某個檔案是特定人的,該人就可以用他的私鑰對檔案加密,別人如果能用他的公鑰解密此檔案,說明此檔案就是這個人的,這就可以說是一種認證的實現。還有如果只想讓某個人看到一個檔案,就可以用此人的公鑰加密檔案然後傳給他,這時只有他自己可以用私鑰解密,這可以說是保密性的實現。基於這種原理還可以實現完整性。這就是PKI 所依賴的核心思想,這部分對於深刻把握PKI 是很重要的,而恰恰這部分是最有意思的。
比如在現實生活中,我們想給某個人在網上傳送一個機密檔案,該檔案我們只想讓那個人看到,我們構想了很多方法,首先我們想到了用對稱密碼將檔案加密,而在我們把加密後的檔案傳送給他後,我們又必須得讓他知道解密用的密鑰,這樣就又出現了一個新的問題,就是我們如何保密的傳輸該密鑰,此時我們發現傳輸對稱密鑰也不可靠。後來我們可以改用非對稱密碼的技術加密,此時發現問題逐漸解決了。然而又有了一個新的問題產生,那就是如何才能確定這個公鑰就是某個人的,假如我們得到了一個虛假的公鑰,比如說我們想傳給A 一個檔案,於是開始查找A 的公鑰,但是這時B 從中搗亂,他把自己的公鑰替換了A 的公鑰,讓我們錯誤的認為B 的公鑰就是A 的公鑰,導致我們最終使用B 的公鑰加密檔案,結果A 無法打開檔案,而B 可以打開檔案,這樣B 實現了對保密信息的竊取行為。因此就算是採用非對稱密碼技術,我們仍舊無法保證保密性的實現,那我們如何才能確切的得到我們想要的人的公鑰呢?這時我們很自然的想到需要一個仲裁機構,或者說是一個權威的機構,它能為我準確無誤的提供我們需要的人的公鑰,這就是CA。
這實際上也是套用公鑰技術的關鍵,即如何確認某個人真正擁有公鑰(及對應的私鑰)。在PKI 中,為了確保用戶的身份及他所持有密鑰的正確匹配,公開密鑰系統需要一個值得信賴而且獨立的第三方機構充當認證中心(Certification Authority,CA),來確認公鑰擁有人的真正身份。就象公安局發放的身份證一樣,認證中心發放一個叫"數字證書"的身份證明。
這個數字證書包含了用戶身份的部分信息及用戶所持有的公鑰。象公安局對身份證蓋章一樣,認證中心利用本身的私鑰為數字證書加上數字簽名。任何想發放自己公鑰的用戶,可以去認證中心申請自己的證書。認證中心在鑑定該人的真實身份後,頒發包含用戶公鑰的數字證書。其他用戶只要能驗證證書是真實的,並且信任頒發證書的認證中心,就可以確認用戶的公鑰。認證中心是公鑰基礎設施的核心,有了大家信任的認證中心,用戶才能放心方便的使用公鑰技術帶來的安全服務。

四 PKI 的核心部分CA

認證中心CA 作為PKI 的核心部分,CA 實現了PKI 中一些很重要的功能,概括地說,認證中心(CA)的功能有:證書發放、證書更新、證書撤銷和證書驗證。CA 的核心功能就是發放和管理數字證書,具體描述如下:
(1)接收驗證最終用戶數字證書的申請。
(2)確定是否接受最終用戶數字證書的申請-證書的審批。
(3)向申請者頒發、拒絕頒發數字證書-證書的發放。
(4)接收、處理最終用戶的數字證書更新請求-證書的更新。
(5)接收最終用戶數字證書的查詢、撤銷。
(6)產生和發布證書廢止列表(CRL)。
(7)數字證書的歸檔。
(8)密鑰歸檔。
(9)歷史數據歸檔。
認證中心CA 為了實現其功能,主要由以下三部分組成:
註冊伺服器:通過 Web Server 建立的站點,可為客戶提供24×7 不間斷的服務。客戶在網上提出證書申請和填寫相應的證書申請表。
證書申請受理和審核機構:負責證書的申請和審核。它的主要功能是接受客戶證書申請並進行審核。
認證中心伺服器:是數字證書生成、發放的運行實體,同時提供發放證書的管理、證書廢止列表(CRL)的生成和處理等服務。
在具體實施時,CA 的必須做到以下幾點:
1) 驗證並標識證書申請者的身份。
2) 確保CA 用於簽名證書的非對稱密鑰的質量。
3) 確保整個簽證過程的安全性,確保簽名私鑰的安全性。
4) 證書資料信息(包括公鑰證書序列號,CA 標識等)的管理。
5) 確定並檢查證書的有效期限。
6) 確保證書主體標識的唯一性,防止重名。
7) 發布並維護作廢證書列表。
8) 對整個證書籤發過程做日誌記錄。
9) 向申請人發出通知。
在這其中最重要的是CA 自己的一對密鑰的管理,它必須確保其高度的機密性,防止他方偽造證書。CA 的公鑰在網上公開,因此整個網路系統必須保證完整性。CA 的數字簽名保證了證書(實質是持有者的公鑰)的合法性和權威性。用戶的公鑰有兩種產生的方式:
(1)用戶自己生成密鑰隊,然後將公鑰以安全的方式傳送給CA,該過程必須保證用戶公鑰的驗證性和完整性。
(2)CA 替用戶生成密鑰隊,然後將其以安全的方式傳送給用戶,該過程必須確保密鑰對的機密性,完整性和可驗證性。該方式下由於用戶的私鑰為CA 所產生,所以對CA 的可信性有更高的要求。CA 必須在事後銷毀用戶的私鑰。
一般而言公鑰有兩大類用途,就像本文前面所述,一個是用於驗證數字簽名,一個是用於加密信息。相應的在CA 系統中也需要配置用於數字簽名/驗證簽名的密鑰對和用於數據加密/脫密的密鑰對,分別稱為簽名密鑰對和加密密鑰對。由於兩種密鑰對的功能不同,管理起來也不大相同,所以在CA 中為一個用戶配置兩對密鑰,兩張證書。
CA 中比較重要的幾個概念點有:證書庫。證書庫是CA 頒發證書和撤銷證書的集中存放地,它像網上的“白頁“一樣,是網上的一種公共信息庫,供廣大公眾進行開放式查詢。這是非常關鍵的一點,因為我們構建CA 的最根本目的就是獲得他人的公鑰。
目前通常的做法是將證書和證書撤消信息發布到一個資料庫中,成為目錄伺服器,它採用LDAP 目錄訪問協定,其標準格式採用X.500 系列。隨著該資料庫的增大,可以採用分散式存放,即採用資料庫鏡像技術,將其中一部分與本組織有關的證書和證書撤消列表存放到本地,以提高證書的查詢效率。這一點是任何一個大規模的PKI 系統成功實施的基本需求,也是創建一個有效的認證機構CA 的關鍵技術之一。
另一個重要的概念是證書的撤消。由於現實生活中的一些原因,比如說私鑰的泄漏,當事人的失蹤死亡等情況的發生,應當對其證書進行撤消。這種撤消應該是及時的,因為如果撤消延遲的話,會使得不再有效的證書仍被使用,將造成一定的損失。在CA 中,證書的撤消使用的手段是證書撤消列表或稱為CRL。即將作廢的證書放入CRL 中,並及時的公布於眾,根據實際情況不同可以採取周期性發布機制和線上查詢機制兩種方式。
密鑰的備份和恢復也是很重要的一個環節。如果用戶由於某種原因丟失了解密數據的密鑰,那么被加密的密文將無法解開,這將造成數據丟失。為了避免這種情況的發生,PKI提供了密鑰備份於解密密鑰的恢復機制。這一工作也是應該由可信的機構CA 來完成的,而且,密鑰的備份與恢復只能針對解密密鑰,而簽名密鑰不能做備份,因為簽名密鑰匙用於不不可否認性的證明的,如果存有備份的話,將會不利於保證不可否認性。
還有,一個證書的有效期是有限的,這樣規定既有理論上的原因,又有實際操作的因素。在理論上諸如關於當前非對稱算法和密鑰長度的可破譯性分析,同時在實際套用中,證明密鑰必須有一定的更換頻度,才能得到密鑰使用的安全性。因此一個已頒發的證書需要有過期的措施,以便更換新的證書。為了解決密鑰更新的複雜性和人工干預的麻煩,應由PKI本身自動完成密鑰或證書的更新,完全不需要用戶的干預。它的指導思想是:無論用戶的證書用於何種目的,在認證時,都會線上自動檢查有效期,當失效日期到來之前的某時間間隔內,自動啟動更新程式,生成一個新的證書來替代舊證書。
結束語
個人感覺PKI/CA 技術很有發展前途,只是在我國的套用才剛剛起步。另外CA 作為電子商務的特殊實體,它必須具有權威性,這種權威性來自政府或公共組織的授予;它必須使公眾所依賴的機構,它頒發的證書可信;它必須是公正的,不參與交易雙方的。本文僅是停留在比較簡單的理論介紹,希望此文能讓更多人了解PKI,投入到PKI 的研究中來。
參考書目:
[1] 《公鑰基礎設施(PKI)實現和管理電子安全》 [美] Andrew Nash 等著 清華大學出版社
[2] 《公鑰基礎設施PKI 與認證機構CA》 關振勝 著 電子工業出版社出版

相關詞條

相關搜尋

熱門詞條

聯絡我們