摘 要:在網(wǎng)絡(luò)高速發(fā)展的今天,通信安全問題也日益突出,內(nèi)容被截獲,數(shù)據(jù)被篡改,通信身份被偽造,保護(hù)傳送數(shù)據(jù)和進(jìn)行通信雙方身份驗證的需求也越來越強(qiáng)烈。最常見的安全是通過使用PKI系統(tǒng)數(shù)字證書實現(xiàn)的。數(shù)字證書包含一對密鑰,可以進(jìn)行數(shù)據(jù)加密和數(shù)字簽名。
關(guān)鍵詞:SSL;數(shù)字證書;加密;認(rèn)證
中圖分類號:TP393.08
PKI(Public Key Infrastructure),是一系列基于公鑰密碼學(xué)之上,用來創(chuàng)建、管理、發(fā)布、存儲、吊銷數(shù)字證書的系統(tǒng)集合,簡稱公鑰基礎(chǔ)結(jié)構(gòu)。PKI頒發(fā)數(shù)字證書的部分為證書頒發(fā)機(jī)構(gòu),簡稱CA(Certification Authority)。數(shù)字證書是由證書頒發(fā)機(jī)構(gòu)頒發(fā)的一個包含獨一無二數(shù)字序列的文件,其獨特性類似于人的指紋,利用數(shù)字證書,可以進(jìn)行數(shù)據(jù)加密盒驗證用戶身份。利用數(shù)字證書,可以對用戶發(fā)送到網(wǎng)絡(luò)中的數(shù)據(jù)信息進(jìn)行加密和簽名,加密能保證數(shù)據(jù)信息在網(wǎng)絡(luò)中傳輸不被竊取,而數(shù)字簽名能保證數(shù)據(jù)不會被改動并確保證明通信雙方的身份。
1 PKI基本構(gòu)成
PKI是利用公鑰加密的一系列硬件、軟件集合,它由證書頒發(fā)機(jī)構(gòu)、公鑰加密技術(shù)、注冊中心(RA)、證書庫、證書吊銷系統(tǒng)、時間戳(TSA)等組成。PKI是一種新型的安全技術(shù),由于其數(shù)字證書的獨一無二和復(fù)雜性,其加密程度較其他方法而言最高。PKI常用于確保電子商務(wù)安全,公鑰基礎(chǔ)結(jié)構(gòu)通常用于確保網(wǎng)上通信的安全和用戶的身份驗證,例如常見的網(wǎng)上銀行、網(wǎng)上證券交易、電子商務(wù)交易等等,也廣泛用于需要確保安全的企業(yè)級通信。一個常規(guī)的PKI系統(tǒng)通常包括證書頒發(fā)機(jī)構(gòu)CA、證書申請網(wǎng)站、注冊機(jī)構(gòu)RA、數(shù)字證書存儲數(shù)據(jù)庫。證書頒發(fā)機(jī)構(gòu)CA可以進(jìn)行頒發(fā)、授權(quán)掛起的證書申請、吊銷證書等操作;注冊機(jī)構(gòu)RA可以進(jìn)行如身份審核、證書下載列表CRL管理、密鑰生成及密鑰備份等操作;數(shù)字證書存儲數(shù)據(jù)庫在活動目錄中是與目錄服務(wù)集成在一起的數(shù)據(jù)庫,可以管理用戶的證書申請,對證、密鑰等信息進(jìn)行管理,并能進(jìn)行證書相關(guān)屬性的查詢。一個完整的PKI應(yīng)用系統(tǒng)至少應(yīng)具有以下五個部分:
(1)證書頒發(fā)機(jī)構(gòu)(CA),CA是PKI的核心,CA管理所有用戶、計算機(jī)、服務(wù)的證書,在網(wǎng)上加密和驗證用戶的身份,將用戶的證書附加到通信數(shù)據(jù)上,并負(fù)責(zé)更新證書吊銷列表。
(2)目錄服務(wù)器,常用的是windows server活動目錄系列,證書頒發(fā)機(jī)構(gòu)CA用于頒發(fā)和管理用戶的證書和發(fā)布已被吊銷的證書列表,用戶可以通過WEB服務(wù)器的證書申請頁面申請、下載、查看吊銷列表。
(3)啟用(SSL)加密的WEB服務(wù)器,SSL全稱為安全套接層Secure socket layer,由網(wǎng)景公司在瀏覽器上首推,用于保護(hù)通信數(shù)據(jù)的安全及完整性,目前已擴(kuò)展到對通信雙方的身份進(jìn)行鑒別及網(wǎng)頁通信的服務(wù)器端和客戶端間的內(nèi)容加密的通用標(biāo)準(zhǔn)。
(4)Web服務(wù)器,包含了Web服務(wù)器端和客戶端,以windows系統(tǒng)系列為例,服務(wù)器端為IIS組件,安裝在服務(wù)器上(如windows server 2008),對網(wǎng)頁進(jìn)行存儲、管理、提供用戶訪問;客戶端為IE瀏覽器,安裝在客戶機(jī)上(如windows xp),向服務(wù)器提出網(wǎng)頁瀏覽請求。通常情況下,網(wǎng)頁的傳輸是明文傳輸,在服務(wù)端啟用SSL加密后,能保證網(wǎng)頁數(shù)據(jù)傳輸?shù)臋C(jī)密性,并能對客戶端身份進(jìn)行驗證。
(5)客戶端模塊,客戶端模塊是指各行業(yè)自開發(fā)的各種行業(yè)應(yīng)用系統(tǒng),例如網(wǎng)上銀行、網(wǎng)上證券交易、電子商務(wù)交易。以網(wǎng)上銀行為例,整個網(wǎng)上交易系統(tǒng)由CA認(rèn)證中心、身份認(rèn)證、用戶管理、訪問控制、終端安全、內(nèi)部子系統(tǒng)等組成。
2 公鑰加密原理
數(shù)據(jù)加密的過程為:將原始的或未加密的數(shù)據(jù),使用密鑰對其進(jìn)行計算,輸出一系列密文。如果沒有解密的密鑰經(jīng)過還原運算,則密文不可讀。通過數(shù)據(jù)加密,可以用來保護(hù)數(shù)據(jù)不被非法閱讀。傳統(tǒng)的加密方法為對稱加密,即文件加密盒解密使用相同的密鑰;公鑰加密(又稱為非對稱密鑰加密)指由對應(yīng)的一對唯一性密鑰(即公開密鑰和私有密鑰)組成的加密方法。傳統(tǒng)的對稱加密中的加密和解密密鑰是對等的,由容易互相推導(dǎo)出,安全性較低。而目前越來越普及的公鑰加密也稱之為非對稱加密,與對稱加密不同,非對稱加密包含一對密鑰,即公鑰和私鑰,公鑰和私鑰可以互為加密解密,即用公鑰加密的數(shù)據(jù)需要用私鑰解密,更重要的是,公鑰私鑰互不相同,而且不能互相推導(dǎo)出。所有的通信客戶端都可以得到公鑰,而私鑰只能由數(shù)字證書持有者所有,具有唯一性。公鑰加密方法由6個部分組成:明文、加密算法、公鑰、私鑰、密文和解密算法。利用公鑰的結(jié)構(gòu),可以對數(shù)據(jù)進(jìn)行加密和數(shù)字簽名兩種操作,加密保護(hù)數(shù)據(jù)安全,而數(shù)字簽名驗證用戶的身份。A和B用戶通信,加密解密的過程簡述如下:A、B交換各自的公鑰,A用B的公鑰加密向B發(fā)出的數(shù)據(jù),B收到后用自己的私鑰進(jìn)行解密;數(shù)字簽名的過程簡述如下:A為了向B證明自己的身份,用自己的私鑰附加到發(fā)向B的數(shù)據(jù)中,B收到后使用A的公鑰進(jìn)行解密,而A的私鑰的持有是唯一性的,因此驗證了A用戶的身份。
3 證書頒發(fā)機(jī)構(gòu)的功能
證書頒發(fā)機(jī)構(gòu)CA是PKI系統(tǒng)的主要組成部分,CA的主要功能有:管理和審核證書的頒發(fā),證書的更新,證書的吊銷與失效,證書的驗證等功能,其中最重要的功能就是管理和審核證書的頒發(fā),其具體功能為:
(1)從網(wǎng)頁終端或者控制臺接受來自客戶端的證書申請。
(2)對于掛起的用戶證書申請請求,進(jìn)行手動驗證,是否頒發(fā)。
(3)向客戶端頒發(fā)證書,或者拒絕頒發(fā)數(shù)字證書。
(4)從網(wǎng)頁終端或者控制臺接收來自客戶端關(guān)于證書更新請求并處理。
(5)從網(wǎng)頁終端或者控制臺接收來自客戶端關(guān)于證書的查詢、撤銷。
(6)吊銷用戶證書并發(fā)布到證書吊銷列表CRL供客戶端下載查看作廢的證書。
(7)數(shù)字證書、密鑰等其他數(shù)據(jù)的存儲。
證書服務(wù)器具體功能的實現(xiàn)以windows server 2003為例,先安裝IIS的WEB組件配置WEB服務(wù)器,用戶再安裝證書服務(wù)組件,在WEB服務(wù)器下生成證書子站點,為用戶提供通過網(wǎng)頁申請證書的途徑。用戶通過IE瀏覽器訪問證書申請的網(wǎng)頁,在網(wǎng)頁上填寫申請的證書類型及個人信息并提交給服務(wù)器,服務(wù)器對申請進(jìn)行審核和處理,并發(fā)放數(shù)字證書,吊銷部分證書,用戶通過網(wǎng)頁下載證書或者證書吊銷列表CRL。在具體工作時證書服務(wù)器會確保以下若干問題:驗證并標(biāo)識證書申請者的身份。確保CA用于簽名證書的非對稱密鑰的質(zhì)量。確保整個簽證過程的安全性,確保簽名私鑰的安全性。證書資料信息(包括公鑰證書序列號,CA標(biāo)識等)的管理。確定并檢查證書的有效期限。確保證書主體標(biāo)識的唯一性,防止重名。發(fā)布并維護(hù)作廢證書列表。對整個證書簽發(fā)過程做日志記錄。向申請人發(fā)出通知。
證書PKI系統(tǒng)中最重要的就是密鑰對的機(jī)密性,公鑰可以公開給相關(guān)通信方,但私鑰必須確保其獨一無二和機(jī)密的特性,防止被其他人獲取,只要證書的所有者才持有私鑰,可以依據(jù)其這一特性用私鑰對數(shù)據(jù)進(jìn)行簽名。有兩種方式可以產(chǎn)生用戶的公鑰,用戶可以自己利用系統(tǒng)生成密鑰對,再將公鑰傳輸給證書服務(wù)器,也可以使用從證書服務(wù)器處申請來的證書密鑰對中的公鑰,在通信的過程中再將公鑰傳輸給相關(guān)通信方,任意一種都需要保持密鑰的機(jī)密性,并驗證其完整性。
4 結(jié)束語
隨著PKI技術(shù)應(yīng)用的不斷深入,PKI技術(shù)本身也在不斷發(fā)展與變化,比如近年來比較重要的變化有屬性證書、漫游證書、無線PKI(WPKI)等。隨著PKI技術(shù)的應(yīng)用與發(fā)展,無論是在有線網(wǎng)絡(luò),還在無線世界,PKI必將發(fā)揮巨大作用。
參考文獻(xiàn):
[1]張蓉,楊磊,程慧,裴國慶.PKI技術(shù)及其發(fā)展應(yīng)用.
[2]PKI發(fā)展篇——PKI現(xiàn)狀與未來(AMT研究院 張麗鋒).
作者簡介:楊曉雪,武漢人,計算機(jī)專業(yè)教師,講師,工程師。
作者單位:武漢軟件工程職業(yè)學(xué)院,武漢 430205