基于EJBCA的證書狀態(tài)查詢系統(tǒng)的實(shí)現(xiàn)與優(yōu)化_第1頁(yè)
基于EJBCA的證書狀態(tài)查詢系統(tǒng)的實(shí)現(xiàn)與優(yōu)化_第2頁(yè)
基于EJBCA的證書狀態(tài)查詢系統(tǒng)的實(shí)現(xiàn)與優(yōu)化_第3頁(yè)
基于EJBCA的證書狀態(tài)查詢系統(tǒng)的實(shí)現(xiàn)與優(yōu)化_第4頁(yè)
基于EJBCA的證書狀態(tài)查詢系統(tǒng)的實(shí)現(xiàn)與優(yōu)化_第5頁(yè)
已閱讀5頁(yè),還剩3頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、基于EJBCA的證書狀態(tài)查詢系統(tǒng)的實(shí)現(xiàn)與優(yōu)化星論文網(wǎng)  來(lái)源:  發(fā)布時(shí)間:2010-05-30 18:23:36 1 引言隨著電子商務(wù)的迅速發(fā)展,PKI(Public Key Infrastructure,公鑰基礎(chǔ)設(shè)施)技術(shù)的應(yīng)用將越來(lái)越廣泛。在PKI框架中,CA(Certification Authority,認(rèn)證中心)的主要功能是頒發(fā)和管理證書。證書有一定的生命期,而由于某些原因(私鑰泄漏等)一些證書在到期之前會(huì)被撤銷,證書將不再有效。證書狀態(tài)查詢是PKI系統(tǒng)中一個(gè)重要的問題?,F(xiàn)有PKI系統(tǒng)所提供的證書狀態(tài)查詢機(jī)制一般是基于CRL(Cer

2、tificate Revoke List,證書撤銷列表)的查詢機(jī)制和基于OCSP協(xié)議(Online Certificate Status Protocol,在線證書狀態(tài)協(xié)議)的實(shí)時(shí)查詢機(jī)制。CRL是一種最簡(jiǎn)單、最常用的證書撤銷方法,CRL實(shí)質(zhì)上是由頒發(fā)證書的CA定期簽發(fā)的一個(gè)簽名的數(shù)據(jù)結(jié)構(gòu),內(nèi)含被該CA撤銷的證書列表。CRL使用證書序列號(hào)來(lái)標(biāo)識(shí)每一個(gè)被撤銷的證書。使用證書的系統(tǒng)就可以通過(guò)查詢“最近簽發(fā)”的CRL 來(lái)查詢證書的狀態(tài)。由于CRL是定期發(fā)布的,所以不能保證證書撤銷信息的實(shí)時(shí)性和準(zhǔn)確性。OCSP協(xié)議是PKIX工作組在RFC2560中提出的協(xié)議,給用戶提供了一種方便快捷的數(shù)字證書狀態(tài)查詢

3、通道,它可以滿足那些要求提供比CRL更及時(shí)的證書撤銷信息的操作要求,例如涉及大量資金的交易或者股票買賣。因而OCSP可以作為周期性的CRL的一種代替機(jī)制或補(bǔ)充機(jī)制,使得PKI體系能更有效、更安全地應(yīng)用于各個(gè)領(lǐng)域。目前,在校園網(wǎng)中部署CA系統(tǒng)的技術(shù)已經(jīng)相對(duì)成熟,而且有許多開源的CA系統(tǒng)可供參考。使用獨(dú)立的PKI系統(tǒng),不僅有助于校園網(wǎng)統(tǒng)一管理,而且可以節(jié)省大量的費(fèi)用。EJBCA用JAVA編寫,是一個(gè)具有完整功能的證書認(rèn)證體系,并提供了一個(gè)開放的、高性能的、具有獨(dú)立平臺(tái)和基于組件的CA。它包含有PKI中幾乎所有重要的功能部件,比如RA(Registration Authority,注冊(cè)中心)、CA、

4、CSDB(Certificate Storage Database,證書存儲(chǔ)數(shù)據(jù)庫(kù))、CRL、OCSP等。為了提高校園網(wǎng)安全性,這里使用EJBCA建立GDUFCA。2 EJBCA系統(tǒng)的安裝配置在安裝軟件的配置上,這里選擇最新版本的EJBCA軟件,并經(jīng)多方測(cè)試優(yōu)化組合。相關(guān)軟件均可通過(guò)開源網(wǎng)站下載得到。表1  EJBCA系統(tǒng)的軟件組合 軟件名稱及版本 下載地址JDK1.6.0_9 JBOSS-4.2.2.GA EJBCA_3.7.2 Apache-ant-1.7.0 MySQL 5.0 MySQL-connector

5、-java-5.0.6 Jce_policy-1_6_0 MySQL-front-3.2 部署EJBCA系統(tǒng)的過(guò)程如下:(1)生成初步部署文件ejbca.ear。在%EJBCA_HOME%目錄下,運(yùn)行:ant bootstrap。生成完畢,運(yùn)行%JBOSS_HOME%/run.bat文件,啟動(dòng)jboss。由于內(nèi)存處理任務(wù)較繁重,為了防止內(nèi)存溢出錯(cuò)誤,設(shè)置ANT_OPTS變量,參數(shù)為:ANT_OPTS=-Xmx512m。(2)安裝管理CA并初始化EJBCA系統(tǒng)。首先啟動(dòng)MySQL數(shù)據(jù)庫(kù),然后在%EJBCA_HOME%/下,運(yùn)行以下命令:ant install,安裝管

6、理CA并初始化EJBCA系統(tǒng)。安裝時(shí),將“CN=AdminCA1,O=EJBCA Sample,C=SE”設(shè)置為:“CN=GDUFCA,O=GDUF,C=CN”;將“CN=localhost,O=EJBCA Sample,C=SE”設(shè)置為:“CN=localhost,O=GDUF,C=CN”。安裝完畢,停止JBOSS。(3)重新部署整個(gè)系統(tǒng)。在%EJBCA_HOME%目錄下,運(yùn)行命令:ant deploy。將重新部署整個(gè)系統(tǒng),并用密鑰庫(kù)配置Sevlet容器。(4)安裝管理員證書。將%EJBCA_HOME%/p12/superadmin.p12證書導(dǎo)入瀏覽器,默認(rèn)密碼是ejbca。方法為:選擇證

7、書文件,并單擊右鍵,在彈出的對(duì)話框中選擇“安裝PFX”,就會(huì)打開導(dǎo)入證書的對(duì)話框。(5)重新啟動(dòng)JBOSS。登錄http:/localhost:8080/ejbca/。如果可以進(jìn)入管理員(administrator)頁(yè)面(要提示證書)說(shuō)明安裝成功。管理地址為:https:/localhost:8443/ejbca/adminweb/index.jsp。分別單擊左側(cè)的“系統(tǒng)配置”、“個(gè)人選項(xiàng)”,在右側(cè)的管理員首選項(xiàng)中設(shè)置Web界面默認(rèn)語(yǔ)言為“ZH”(中文)。3 CRL機(jī)制的實(shí)現(xiàn)CRL使用證書序列號(hào)來(lái)標(biāo)識(shí)每一個(gè)被撤銷的證書。使用證書的系統(tǒng)就可以通過(guò)查詢“最近發(fā)布”的CRL 來(lái)查詢證書的狀

8、態(tài)。 “最近發(fā)布”的意思是可能隨著本地策略改變,但是它通常意味著最近一次發(fā)行的CRL。EJBCA下產(chǎn)生CRL是在圖形界面下完成的。首先通過(guò)管理員身份,進(jìn)入“基本功能”界面,單擊該界面中的“創(chuàng)建CRL”按鈕即可創(chuàng)建新的CRL,并能夠生成最新的*.CRL文件。CRL的完整性和可靠性由它本身的數(shù)字簽名保證,簽名者一般就是證書的簽發(fā)者。如圖1所示。 圖1 創(chuàng)建CRL的界面CA按照正常周期(例如,每隔一小時(shí)、每天或者每周)發(fā)行一次新的CRL,這就有可能出現(xiàn)新的撤銷是在一個(gè)正常CRL發(fā)布周期之后不久,而遠(yuǎn)離下一次發(fā)布的周期。由于CRL是定期發(fā)布的,所以不能保證證書撤銷信息的實(shí)時(shí)性和準(zhǔn)確性。在EJ

9、BCA的CRL中,包含一個(gè)列表的頒發(fā)日期“最新日期”以及下一個(gè)CRL的頒發(fā)日期“到期日期”,由這兩個(gè)日期信息,用戶可以判斷當(dāng)前擁有的CRL是否是最新的。系統(tǒng)本身也應(yīng)用這些信息幫助管理CRL緩沖區(qū),即在下一個(gè)CRL頒布之前,用戶可以一直使用原來(lái)CRL的數(shù)據(jù)結(jié)構(gòu)。第2版的CRL擴(kuò)展域其內(nèi)容為一個(gè)或多個(gè)CRL擴(kuò)展的序列,可以創(chuàng)建完全CRL,以便將某個(gè)CA域內(nèi)的所有撤銷信息都包括在一個(gè)CRL中。完全CRL嚴(yán)格按照下次更新時(shí)間進(jìn)行頒布,因此在同一個(gè)時(shí)刻只有一個(gè)有效的CRL可以提供撤銷的信息。4 OCSP機(jī)制的實(shí)現(xiàn)CRL具有兩個(gè)缺陷:第一,在校園網(wǎng)絡(luò)環(huán)境中,隨著CRL規(guī)模的增加,在下載和保存的過(guò)

10、程中會(huì)耗費(fèi)大量的時(shí)間和存儲(chǔ)資源;第二,在CRL的發(fā)布周期中會(huì)出現(xiàn)時(shí)間間隔,使得被撤銷的證書仍能夠通過(guò)驗(yàn)證,形成潛在的安全漏洞。在這種情況下,OCSP協(xié)議應(yīng)運(yùn)而生。OCSP協(xié)議即在線證書狀態(tài)協(xié)議,是用于OCSP請(qǐng)求者(客戶端)和 OCSP響應(yīng)者(服務(wù)器)之間的請(qǐng)求/相應(yīng)協(xié)議。OCSP客戶端發(fā)送一個(gè)證書狀態(tài)查詢請(qǐng)求給OCSP服務(wù)器,并且等待直到服務(wù)器返回一個(gè)響應(yīng)。這個(gè)協(xié)議描述了在客戶端檢查證書狀態(tài)和服務(wù)器提供狀態(tài)之間所需要交換的數(shù)據(jù)。在合理的實(shí)現(xiàn)方式下,OCSP可以解決CRL的兩個(gè)問題。OCSP協(xié)議對(duì)OCSP客戶端和OCSP響應(yīng)器之間所需要交換的數(shù)據(jù)進(jìn)行了描述。一個(gè)OCSP請(qǐng)求包含以下數(shù)據(jù):協(xié)議版

11、本、服務(wù)請(qǐng)求、目標(biāo)證書標(biāo)識(shí)和可選的擴(kuò)展項(xiàng)等。OCSP響應(yīng)器在接收到一個(gè)請(qǐng)求之后,首先應(yīng)檢查這個(gè)請(qǐng)求的編碼格式是否正確,然后再根據(jù)響應(yīng)器的配置和請(qǐng)求中所包含的信息,向客戶返回一個(gè)響應(yīng)(確定回復(fù)或出錯(cuò)信息)。首先,OCSP響應(yīng)器返回確定的回復(fù)時(shí),該響應(yīng)必須進(jìn)行數(shù)字簽名。被用來(lái)簽名響應(yīng)信息的密鑰必須屬于下列中的一個(gè):頒發(fā)所涉及證書的CA,是一個(gè)信任的響應(yīng)器(它的公鑰被請(qǐng)求者信任),是CA指派的響應(yīng)器(被授權(quán)的響應(yīng)器,它具有一張由CA直接頒發(fā)的用來(lái)表示此響應(yīng)器可以為本CA發(fā)布OCSP響應(yīng)的特別標(biāo)記證書)。一個(gè)確定的回復(fù)信息由以下幾部分組成:版本號(hào)、響應(yīng)器名稱、對(duì)每一張被請(qǐng)求證書的回復(fù)、可選擴(kuò)展項(xiàng)、簽名

12、算法、對(duì)象標(biāo)識(shí)和簽名值。在對(duì)每一張被請(qǐng)求證書的回復(fù)中都包含有證書狀態(tài)?!罢!睜顟B(tài)表示這張證書沒有被撤銷,“撤銷”狀態(tài)表示證書已被撤銷,“未知”狀態(tài)是表示響應(yīng)器不能判斷請(qǐng)求的證書狀態(tài)。EJBCA軟件在用戶通過(guò)客戶端程序或者瀏覽器遞交OCSP證書查詢請(qǐng)求的時(shí)候,在線查詢服務(wù)器先加載CA證書到緩存中,然后根據(jù)用戶請(qǐng)求內(nèi)容來(lái)確定OCSP響應(yīng)器,再獲得所要查詢的證書的狀態(tài),并返回響應(yīng)信息給客戶。系統(tǒng)的安全管理員可以決定授權(quán)和撤銷一個(gè)OCSP響應(yīng)器。在EJBCA的公共界面中,單擊左側(cè)的“Fetch CA&OCSP Certificates”鏈接,即可了解最新的證書撤銷信息。以IE瀏覽器為例。單擊

13、“For Internet Explorer”下的“OCSPResponder Certificate”,可以看到當(dāng)前的撤銷證書。如圖2所示。 圖2 OCSP在線查詢用戶發(fā)送一個(gè)application/ocsp-request請(qǐng)求,服務(wù)器接收并驗(yàn)證是不是application/ocsp-request類型的用戶請(qǐng)求。通過(guò)后,根據(jù)用戶請(qǐng)求獲取對(duì)應(yīng)的響應(yīng)器證書并產(chǎn)生一個(gè)基本的響應(yīng)信息。該響應(yīng)信息會(huì)根據(jù)不同的證書狀態(tài)進(jìn)行擴(kuò)充,然后查詢和獲取用戶需要查詢的證書狀態(tài),形成最終的響應(yīng)信息后簽發(fā)該信息返回給用戶。當(dāng)管理員需要更新或撤銷OCSP證書時(shí),使用超級(jí)管理員登錄到管理界面。這里以廣東金融學(xué)院

14、的肇慶分CA為例。單擊“CA功能”下的“編輯CA”, 在出現(xiàn)的網(wǎng)絡(luò)界面中,對(duì)肇慶子CA(GDUFZQCA)進(jìn)行編輯。在其中的“OCSP服務(wù)”中,單擊“撤銷并刪除OCSP證書”即可進(jìn)行設(shè)置。如圖4-13所示。 圖3 撤銷并更新OCSP證書其次,當(dāng)OCSP響應(yīng)器返回出錯(cuò)信息時(shí),該響應(yīng)不用簽名。出錯(cuò)信息包括:請(qǐng)求編碼格式不正確、內(nèi)部錯(cuò)誤、稍后再試、請(qǐng)求需要簽名、未授權(quán)等。5 OCSP系統(tǒng)的改進(jìn)實(shí)際應(yīng)用中,盡管OCSP能夠提供實(shí)時(shí)和最新的證書狀態(tài)信息,但這并不意味著來(lái)自O(shè)CSP的響應(yīng)和證書當(dāng)前撤消狀態(tài)相比就是零延遲。針對(duì)OCSP協(xié)議的一些局限性,本文提出了針對(duì)EJBCA的OCSP系

15、統(tǒng)改進(jìn)方案。對(duì)于這些參數(shù)的設(shè)置優(yōu)化,可以打開/ejbca/conf安裝目錄,將perties.sample重命名為:perties,然后對(duì)配置參數(shù)進(jìn)行修改。在本方案中,將OCSP作為一個(gè)獨(dú)立的服務(wù)器來(lái)實(shí)現(xiàn)。如圖4-14所示。 圖4 OCSP系統(tǒng)體系結(jié)構(gòu)圖本系統(tǒng)主要由以下部分組成:(1)OCSP服務(wù)器,實(shí)現(xiàn)對(duì)OCSP協(xié)議消息流的處理。它直接接受OCSP客戶端的證書狀態(tài)查詢請(qǐng)求,通過(guò)查詢OCSP數(shù)據(jù)庫(kù)的信息生成對(duì)查詢請(qǐng)求的響應(yīng),并調(diào)用加密機(jī)對(duì)響應(yīng)進(jìn)行簽名,然后將響應(yīng)返回給OCSP客戶端。(2)OCSP數(shù)據(jù)庫(kù)。存儲(chǔ)證書的狀態(tài)信息,其內(nèi)容和CA數(shù)據(jù)庫(kù)中必須同步

16、。(3)證書狀態(tài)信息接收器,實(shí)現(xiàn)同步OCSP數(shù)據(jù)庫(kù)和CA數(shù)據(jù)庫(kù)中的證書狀態(tài)信息。每當(dāng)CA系統(tǒng)有證書發(fā)布或者證書撤銷時(shí),該接收器就可以接收到這些證書狀態(tài)信息,并更新OCSP數(shù)據(jù)庫(kù)中的相應(yīng)信息。(4)證書狀態(tài)信息發(fā)送器。每當(dāng)CA系統(tǒng)有證書發(fā)布或者證書撤銷時(shí),CA系統(tǒng)就實(shí)時(shí)地通過(guò)該發(fā)送器向OCSP響應(yīng)器發(fā)送相關(guān)的證書狀態(tài)信息。(5)OCSP客戶端。通過(guò)執(zhí)行標(biāo)準(zhǔn)的OCSP協(xié)議向OCSP響應(yīng)器提出查詢請(qǐng)求。通過(guò)上述部件的有機(jī)組合,構(gòu)成一個(gè)完整的OCSP體系。6 結(jié)束語(yǔ)本文介紹了PKI的相關(guān)知識(shí),結(jié)合實(shí)際在校園網(wǎng)中部署了開源EJBCA系統(tǒng),建立學(xué)校CA認(rèn)證中心,實(shí)現(xiàn)了CRL和OCSP兩種證書狀態(tài)查詢方式并對(duì)它們的優(yōu)缺點(diǎn)進(jìn)行了論述,提出了一個(gè)改進(jìn)的的

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論