CA認(rèn)證技術(shù)的研究與設(shè)計_第1頁
CA認(rèn)證技術(shù)的研究與設(shè)計_第2頁
CA認(rèn)證技術(shù)的研究與設(shè)計_第3頁
CA認(rèn)證技術(shù)的研究與設(shè)計_第4頁
CA認(rèn)證技術(shù)的研究與設(shè)計_第5頁
已閱讀5頁,還剩26頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

北京理工大學(xué)珠海學(xué)院2014屆畢業(yè)設(shè)計(論文).前言1.1選題背景隨著信息化進程的深入和互聯(lián)網(wǎng)的迅速,信息安全顯得日益重要。國家對此十分重視,1997年國務(wù)院信息辦立項籌建互聯(lián)安全產(chǎn)品測評認(rèn)證中心;1998年10月成立中國國家信息安全測評認(rèn)證中心;1999年2月該中心及其安全測評實驗室分別通過中國產(chǎn)品質(zhì)量認(rèn)證機構(gòu)國家認(rèn)可委員會和中國實驗室國家認(rèn)可委員會的認(rèn)可,正式對外開展信息安全測評認(rèn)證工作。近十年來,伴隨著現(xiàn)代網(wǎng)絡(luò)技術(shù)不斷的發(fā)展,internet已經(jīng)潛移默化的深入人們的生活,無論是工作,還是日常化的生活都與網(wǎng)絡(luò)緊密的結(jié)合在一起。而在這發(fā)展的過程中,對信息的保護已經(jīng)成為當(dāng)今社會的一個很嚴(yán)峻的問題。為了確保在網(wǎng)上交易過程中信息不被泄漏,就必須建立一種可以信任的機制來保證傳輸數(shù)據(jù)的認(rèn)證、完整性、機密性以及不可否認(rèn)性,數(shù)字正式就是應(yīng)這種要求而出現(xiàn)的。數(shù)字證書是各實體在網(wǎng)上信息交流及商務(wù)交易活動中的身份證明,它是實現(xiàn)一個公匙與某一實體之間的相互綁定。為了實現(xiàn)這種綁定關(guān)系,需要一組可以信賴的第三方來擔(dān)保用戶之間的身份。第三方實體稱為認(rèn)證中心(CertificateAuthority,CA),它提供的功能主要有頒發(fā)證書、更新證書、查詢證書、歸檔證書和作廢證書。1.2選題目標(biāo)隨著internet的不斷發(fā)展,電子商務(wù)已經(jīng)受到越來越多的青年人的青睞,與此同時,為人們帶來無限商機的同時,世界各地也在面對著一個共同的障礙——電子商務(wù)網(wǎng)絡(luò)支付的安全理由。

CA認(rèn)證系統(tǒng)是專門為了提高網(wǎng)上交易的安全而出現(xiàn)的。CA認(rèn)證雖然不直接參加買賣雙方之間的交易,但由于它的原理是買賣雙方共同信任的機構(gòu),在交易的過程中起著不可替代的作用,使之成為整個電子商務(wù)中最為關(guān)鍵的組成部分?,F(xiàn)在的網(wǎng)上交易過程中,如何解決交易過程的正當(dāng)性與交易雙方的身份有效性,變得非常重要。CA認(rèn)證機構(gòu)(certificateAuthority)是整個網(wǎng)上電子交易安全的最為關(guān)鍵環(huán)節(jié),它主要負責(zé)產(chǎn)生、治理及分配所有在網(wǎng)上交易時需要身份認(rèn)證的數(shù)字證書,為解決用戶信任題目,在交易的各個環(huán)節(jié)中,交易雙方都需要檢驗對方數(shù)字證書的有效性,所以,認(rèn)證機構(gòu)發(fā)放的證書一定要具有權(quán)威性、公證性以及不可抵賴性。CA是公鑰基礎(chǔ)設(shè)施的核心,是證書的簽發(fā)機關(guān),為客戶提供簽發(fā)公鑰證書、認(rèn)證證書、分配證書和治理證書的服務(wù)。CA將客戶的公鑰與客戶的名稱及其它屬性關(guān)聯(lián)起來,并制定政策和識別用戶身份,具體步驟來驗證、再對用戶證書進行簽名驗證,確保證書持有者的身份和公鑰的擁有權(quán)。2.CA認(rèn)證技術(shù)的簡介2.1CA認(rèn)證的概念CA(CertificateAuthority)是證書授權(quán)的意思,是負責(zé)簽發(fā)認(rèn)證、簽發(fā)、管理證書的機關(guān),是合法的、中立的、權(quán)威的、公正的第三方電子認(rèn)證中心。給個人、企事業(yè)單位和政府機構(gòu)簽發(fā)數(shù)字證書,是用來確認(rèn)電子商務(wù)活動中各自的身份,并通過加密解密策略來實現(xiàn)網(wǎng)上安全的信息交換與安全交易。CA(CertificateAuthority)是指發(fā)放、管理、廢除數(shù)字證書的機構(gòu)。CA的作用是檢查證書持有者身份的合法性,并簽發(fā)證書,對證書和密鑰進行管理,保證證書不被偽造或篡改。數(shù)字證書實際上是存于計算機上的一個記錄,是由CA簽發(fā)的一個聲明,證明證書主體與證書中所包含的公鑰的惟一對應(yīng)關(guān)系。證書包括證書申請者的名稱及相關(guān)信息、申請者的公鑰、簽發(fā)證書的CA的數(shù)字簽名及證書的有效期等內(nèi)容。數(shù)字證書的作用是保證電子商務(wù)的安全進行并且對雙方網(wǎng)上交易進行互相驗證身份。CA是基于非對稱加密體系建立的電子商務(wù)安全認(rèn)證機構(gòu)。2.2CA認(rèn)證技術(shù)實現(xiàn)的原理基礎(chǔ)數(shù)字證書為發(fā)布公鑰提供了一種簡便的途徑,它則成為公鑰的載體以及加密算法,通過建立數(shù)字證書,可以構(gòu)建出一個簡單的加密網(wǎng)絡(luò)應(yīng)用平臺,網(wǎng)絡(luò)用戶的身份憑證由數(shù)字證書頒發(fā)CA認(rèn)證機構(gòu)。只有經(jīng)過CA簽發(fā)的證書才具備可認(rèn)證性,CA并不是一個單純的防御手段,它集合了多種密碼學(xué)算法:

消息摘要算法:SHA、MD5(對數(shù)字證書進行摘要處理,驗證數(shù)據(jù)完整性服務(wù)器)

數(shù)字簽名算法:DSA、RSA(對數(shù)據(jù)進行簽名或者進行驗證操作,保證數(shù)據(jù)的完整性和不可抵賴性)。對稱性加密算法:RC2、RC4、AES、DES、IDEA、(為了保證數(shù)據(jù)保密性服務(wù),對數(shù)據(jù)進行加密或者解密操作)

非對稱性加密算法:RSA、DH(為了保證數(shù)據(jù)保密性服務(wù),對數(shù)據(jù)進行加密或者解密操作。)

證書的驗證過程實際上是對數(shù)字證書的公鑰做驗證簽名,證書的簽發(fā)過程實際上是對申請數(shù)字證書的公鑰做數(shù)字簽名,其中還包括了證書有效期,我們通過CA數(shù)字證書來對網(wǎng)絡(luò)上傳輸?shù)臄?shù)據(jù)進行加密或者解密和簽名或者驗證等操作,保證數(shù)據(jù)的機密性、完整性、不可抵賴性、認(rèn)證性,確保電子商務(wù)交易過程中的真實性和網(wǎng)絡(luò)安全性。2.3CA認(rèn)證技術(shù)的作用2.3.1維護數(shù)據(jù)的保密性

借助CA認(rèn)證機構(gòu)簽發(fā)的數(shù)字認(rèn)證證書可以更好的防止非法用戶進入系統(tǒng)及合法用戶對系統(tǒng)資源的非法使用。運用包含公開密鑰加密法、私人密鑰加密法、哈希函數(shù)加密法及數(shù)字信封技術(shù)等一系列技術(shù)手段,對一些較為機密的數(shù)據(jù)文件進行加密,保證使發(fā)送過程中的加密數(shù)據(jù)不會被第三方竊取,即使不小心被他人獲取文件,也無法破譯其中的內(nèi)容,從而保證交換數(shù)據(jù)的傳遞的安全性。

2.3.2驗證雙方身份的真實性

電子商務(wù)畢竟不是面對面的交易,很難辨析交易對象的真實性,因而對交易雙方身份的真實性驗證顯得非常重要。借助于CA認(rèn)證中心的口令、電子簽名技術(shù)和公開密鑰,經(jīng)過證書服務(wù)系統(tǒng)認(rèn)證后,取得數(shù)字證書是交易用戶在互聯(lián)網(wǎng)上的電子身份證,它能有效鑒別特定用戶的登記情況、經(jīng)營情況和資信情況,建立交易當(dāng)事人相互之間的信任。

2.3.3保證信息的完整性

為了防止在交易結(jié)束后,當(dāng)事人否認(rèn)自己所做過的交易,從而給雙方造成不必要的損失。通過CA認(rèn)證Hash函數(shù)的電子簽名技術(shù)和數(shù)字證書技術(shù),即可以實現(xiàn)信息的完整性辨析。因為CA機構(gòu)所簽發(fā)的數(shù)字證書只被所標(biāo)識的信息的當(dāng)事人唯一擁有,故利用其數(shù)字證書在傳送前,對交易信息進行電子簽名,便可證明交易信息是最初信息發(fā)送人所發(fā)送的,發(fā)送者無法否認(rèn)發(fā)送過程中該交易信息進行過該項交易活動。保證了信息的完整性。3.系統(tǒng)框架描述3.1系統(tǒng)總體架構(gòu)一個簡單的證書機構(gòu)簽發(fā)的流程主要由:業(yè)務(wù)系統(tǒng)、CA數(shù)字證書受理系統(tǒng)、數(shù)字簽名認(rèn)證系統(tǒng)三大部分組成。系統(tǒng)的總體架構(gòu)如下圖所示,3.2主要功能(1)簽發(fā)自簽名的根證書;

(2)審核和簽發(fā)其他CA認(rèn)證系統(tǒng)的交叉認(rèn)證證書;

(3)向其他CA系統(tǒng)申請交叉認(rèn)證證書;

(4)受理和審核各RA機構(gòu)的申請;

(5)為RA機構(gòu)簽發(fā)申請;

(6)接受并處理各RA服務(wù)器的證書業(yè)務(wù)申請;

(7)管理全系統(tǒng)的用戶和證書資料;

(8)簽發(fā)業(yè)務(wù)證書和證書作廢表;

(9)維護全系統(tǒng)的證書作廢表;

(10)維護全系統(tǒng)的查詢。3.3電子商務(wù)的核心模塊電子商務(wù)的安全體系由網(wǎng)絡(luò)服務(wù)層、加密技術(shù)層、安全認(rèn)證層、安全協(xié)議層、應(yīng)用系統(tǒng)層共同組成。下層是上層的基礎(chǔ),為上層提供技術(shù)支持;上層是下層的擴展與遞進。各層次之間相互依賴、相互關(guān)聯(lián)構(gòu)成從而統(tǒng)一的整體。通過合理應(yīng)用各層控制技術(shù),并進行有機結(jié)合,那么就可實現(xiàn)電子商務(wù)系統(tǒng)的安全,從而進一步確保電子商務(wù)活動的有效性、保密性、完整性和不可抵賴性。3.4主要用到的技術(shù)3.4.1網(wǎng)絡(luò)安全技術(shù)①防火墻技術(shù)防火墻技術(shù)是安全訪問控制技術(shù),主要作用是保護網(wǎng)絡(luò)環(huán)境不安全的情況下實現(xiàn)局部網(wǎng)絡(luò)的安全性。目前的電子商務(wù)系統(tǒng)中都普遍采用了防火墻技術(shù),是因為它在外部和內(nèi)部網(wǎng)絡(luò)之間構(gòu)造了一個可靠的保護層,只有在授權(quán)合法的情況下才能進行對內(nèi)部的網(wǎng)絡(luò)資源進行訪問,有效的防止了外部互聯(lián)網(wǎng)進行的破壞。②虛擬專用網(wǎng)(VPN)技術(shù)VPN技術(shù)可以幫助用戶及供應(yīng)商之間建立可以信賴的安全連接,從而保證了數(shù)據(jù)的安全傳輸。通過附加的安全隧道、訪問控制和用戶認(rèn)證等技術(shù)實現(xiàn)與專用網(wǎng)絡(luò)的安全性能。3.4.2數(shù)據(jù)加密技術(shù)數(shù)據(jù)加密的定義是對信息進行重新編碼,從而達到信息內(nèi)容的隱藏,讓非法用戶不能獲取信息真實內(nèi)容,它是電子商務(wù)中采用的主要安全措施。3.4.3認(rèn)證技術(shù)認(rèn)證技術(shù)是防止信息被篡改、刪除、重放和偽造的一種有效方法。它使接收者能夠識別和確認(rèn)消息的來源和真?zhèn)危瑥亩WC了信息的真實性。4.詳細設(shè)計伴隨著電子商務(wù)的信息時代的到來,CA認(rèn)證中心在確認(rèn)通信雙方身份的真實可靠性起著重要的作用,廣泛應(yīng)用于電子商務(wù)交易以及網(wǎng)上證券交易等領(lǐng)域。尤其是在目前網(wǎng)上電子商務(wù)上,不再是局限于顧客和銷售商之間的商業(yè)行為(BtoC),而是企業(yè)和企業(yè)之間的交易行為(BtoB)逐漸增多,這就使得在企業(yè)或行業(yè)內(nèi)部必須設(shè)立一個可以彼此信賴的CA認(rèn)證系統(tǒng)。有了適合自己規(guī)模的CA,企業(yè)便可靈活地設(shè)置CA系統(tǒng)的不同部分以及功能,做出必要的簡化和改進,從而去適應(yīng)現(xiàn)代社會發(fā)展的道路。本文對電子商務(wù)安全認(rèn)證技術(shù)的基礎(chǔ)進行了學(xué)習(xí)分析;借助公鑰基礎(chǔ)設(shè)施PKI中數(shù)字證書和CA功能介紹的相關(guān)知識點,在此基礎(chǔ)上提出構(gòu)建一個基于電子商務(wù)模型的CA認(rèn)證系統(tǒng)的實現(xiàn)方案。該設(shè)計方案可用于中小型企業(yè)內(nèi)部構(gòu)建自己的CA,具有普適性且易實現(xiàn)。4.1方案的總體要求與設(shè)計思想方案的總體要求與設(shè)計思想CA系統(tǒng)作為整個電子商務(wù)系統(tǒng)安全性的核心,承擔(dān)著身份審核、證書簽發(fā)、交易認(rèn)證等重要服務(wù)。為維護CA中心的權(quán)威性和公正性,技術(shù)上必須采用先進的設(shè)計方法。加密技術(shù)是數(shù)字證書的核心,所采用的加密技術(shù)應(yīng)考慮先進性、業(yè)界標(biāo)準(zhǔn)和普遍性,同時,為使數(shù)字證書能實現(xiàn)可互操作性,需要與主要的Internet安全協(xié)議兼容以支持多應(yīng)用環(huán)境。本系統(tǒng)在嚴(yán)格遵守ITU的X.509標(biāo)準(zhǔn)的基礎(chǔ)上,設(shè)計一個具有較高安全性的認(rèn)證中心,該中心在技術(shù)上力求達到:保證系統(tǒng)的先進性和可擴展性,使之既能滿足當(dāng)前證書應(yīng)用的需求,又能滿足以后業(yè)務(wù)擴展的需求;(2)采用當(dāng)前最流行和最可靠的加密算法和網(wǎng)絡(luò)安全技術(shù),保證系統(tǒng)具有較高的安全性;(3)具有數(shù)字簽名功能,實現(xiàn)發(fā)送者對信息的數(shù)字簽名,提供交易過程的不可否認(rèn)性和防抵賴性;(4)完整的證書管理功能,透明地提供證書的有效期管理、安全的密鑰管理等功能;(5)全程證書歷史檔案管理,支持全程審計功能.對每次交易加密、傳輸?shù)榷急A粲涗浺詡鋵徲嫴樵儯?6)提供證書的多種存儲方式,保證系統(tǒng)運行的高效與安全;為達到本系統(tǒng)的設(shè)計要求,擬從以下幾方面對系統(tǒng)進行設(shè)計:(1)采用LDAP服務(wù)器作為證書管理和CRL管理服務(wù)器。LDAP服務(wù)器支持大容量的讀請求,并為讀密集型的操作進行了專門的優(yōu)化;同時也提供了復(fù)雜的不同層次的ACL(一般都稱為ACL或者訪問控制列表)來控制對數(shù)據(jù)讀和寫的權(quán)限,保證了較高的安全性和可靠性;LDAP協(xié)議是跨平臺的和標(biāo)準(zhǔn)的協(xié)議,因此應(yīng)用程序就不用為LDAP目錄放在什么樣的服務(wù)器上操心了。(2)為保證系統(tǒng)的可擴展性,支持交叉認(rèn)證,使之既能滿足當(dāng)前小范圍內(nèi)CA認(rèn)證需求,又能滿足今后大范圍多種CA系統(tǒng)間的域間交叉認(rèn)證的需求;(3)身份認(rèn)證、密鑰管理以及數(shù)據(jù)的完整性采用可靠性高的RSA算法,指示加密采用DES算法,采用Hash消息摘要及RSA數(shù)字簽名算法。加密公鑰和私鑰長度可為512,1024或更高。(4)實現(xiàn)公鑰/私鑰的生成、用戶證書申請、證書簽發(fā)、證書吊銷、證書驗證、密鑰存儲等功能。(5)為用戶提供功能完善的客戶端管理,方便用戶管理和使用證書。支持用戶自己證書的申請、下載、查詢、更新等,同時能對他人證書進行查詢及下載;(6)提供證書及密鑰的多種存儲方式;(7)制定CA中心的安全管理策略和安全規(guī)范及措施。4.2CA的總體結(jié)構(gòu)本認(rèn)證中心主要負責(zé)在一個安全域內(nèi)的有限群體發(fā)放證書,同時還負責(zé)維護和發(fā)布證書發(fā)放列表CRL(CertificateRevocationIists)。硬件設(shè)施包括:安全服務(wù)器、CA服務(wù)器、登記中心服務(wù)器(RA服務(wù)器)、LDAP服務(wù)器、CA管理服務(wù)器。它們的功能如下:安全服務(wù)器:安全服務(wù)器面向普通用戶,用于提供證書申請、瀏覽、證書撤消列表及證書下載等服務(wù)。安全服務(wù)器與用戶的通信采用安全信道方式(如SSL本認(rèn)證中心主要負責(zé)在一個安全域內(nèi)的有限群體發(fā)放證書,同時還負責(zé)維護和發(fā)布證書發(fā)放列表CRL(CertificateRevocationIists)。硬件設(shè)施包括:安全服務(wù)器、CA服務(wù)器、登記中心服務(wù)器(RA服務(wù)器)、LDAP服務(wù)器、CA管理服務(wù)器。它們的功能如下:安全服務(wù)器:安全服務(wù)器面向普通用戶,用于提供證書申請、瀏覽、證書撤消列表及證書下載等服務(wù)。安全服務(wù)器與用戶的通信采用安全信道方式(如SSL服務(wù)器是證書和證書撤銷列表CRL的存儲體;另一個對于應(yīng)用來講,LDAP是用戶獲取自己和他人的證書以及CA簽發(fā)的CRL這些信息的來源。LDAP服務(wù)器提供目錄瀏覽服務(wù),負責(zé)將RA服務(wù)器傳來的用戶信息及數(shù)字證書加入到服務(wù)器上,這樣其他用戶通過訪問LDAP服務(wù)器就能得到他人的數(shù)字證書。LDAP將目前網(wǎng)絡(luò)上的大量對象信息以目錄的方式存儲在計算機里,在用戶看來,整個目錄在邏輯上是統(tǒng)一的整體,但實際上目錄信息可分布在不同組織管理的計算機上。4.3CA系統(tǒng)功能的實現(xiàn)4.3.1證書的申請證書的申請可以采用兩種方式:面對面申請和通過WEB方式在線申請。(1)面對面申請:用戶親自到RA中心,填寫相關(guān)的表格,然后由操作人員錄入用戶的信息,提交給RA中心的服務(wù)器,并傳給CA中心。CA中心生成用戶身份識別碼,返回給RA中心,由RA交給用戶。具體的遞交方式包括打印密碼信封和郵寄兩種。(2)在線申請,步驟如下:①用戶使用WEB瀏覽器訪問安全服務(wù)器,下載CA的數(shù)字證書,然后與服務(wù)器建立連接并申請數(shù)字證書。填寫用戶信息以方便中心對用戶資料的管理。安全服務(wù)器收到用戶的申請信息后將之傳送給RA服務(wù)器。②登記中心管理員利用自己的瀏覽器與登記中心服務(wù)器建立安全連接,在此過程中要對RA管理員進行嚴(yán)格的身份認(rèn)證。③登記中心將用戶的申請與管理員的數(shù)字簽名傳給CA服務(wù)器,CA管理員查看用戶的詳細信息并驗證RA管理員的簽名后由CA服務(wù)器產(chǎn)生密鑰對并生成證書。④RA服務(wù)器從CA服務(wù)器處得到新的證書,首先將證書輸出到LDAP服務(wù)器以提供目錄瀏覽服務(wù),最后向用戶發(fā)出郵件,通知用戶證書已發(fā)行成功,告訴用戶證書序列號及下載地址。用戶還會知道如何使用安全服務(wù)器上的LDAP配置以便訪問LDAP服務(wù)器,獲得他人的證書。至此用戶數(shù)字證書申請完成。4.3.2證書的發(fā)放該方案使用目錄服務(wù)器發(fā)放進行證書的發(fā)布,所簽發(fā)的證書發(fā)布到LDAP目錄服務(wù)器上,供用戶進行查詢和下載。用戶可以通過離線和在線兩種方式獲得證書:(1)離線方式:用戶通到RA中心提交自己的授權(quán)碼和身份識別碼,然后將證書下載到RA中心,由RA中心按用戶所選擇的證書介質(zhì),為用戶制證,然后發(fā)放給用戶。(2)在線方式:用戶通過Internet,在自己的計算機上將授權(quán)碼和身份識別碼提交給CA中心,即可將證書下載到自己的計算機上。該方案數(shù)字證書支持以手工方式發(fā)放證書,同時也支持以網(wǎng)絡(luò)方式在線發(fā)放證書。用戶可以自由選擇用軟盤、IC卡或USB卡等介質(zhì)來存放自己的證書。無論用戶采用哪一種存放方法,該方案均以龜甲安全部門的有關(guān)規(guī)定為標(biāo)準(zhǔn),用安全可靠的方式在證書存放介質(zhì)中存放用戶證書。4.3.3證書的查詢證書的查詢分為兩類,其一是證書申請的查詢,系統(tǒng)根據(jù)用戶的查詢請求返回當(dāng)前用戶證書申請的處理過程;其二是用戶證書的查詢,這類查詢可以直接在LDAP目錄服務(wù)器上用輕量級目錄訪問協(xié)議(LightweightDirectoryAccessProtocol,LDAP)來完成,LDAP服務(wù)器根據(jù)用戶填寫的查詢信息,返回相應(yīng)的結(jié)果。上述流程中,實際上還應(yīng)該考慮數(shù)據(jù)傳輸?shù)尿炞C工作。作為證書管理的一項基本功能,對于證書查詢的請求和返回結(jié)果都應(yīng)進行身份驗證,這種驗證可通過通信雙方——用戶和CA,對所發(fā)送的數(shù)據(jù)進行數(shù)字簽名獲得。4.3.4證書的撤銷證書的撤銷有兩種情況:第一種是證書有效期已到,或證書在達到它的有效期之前因為用戶和CA間關(guān)系的改變等因素需要被撤銷;第二種情況是由于用戶的私鑰泄露、丟失或是忘記保護私鑰的口令等原因,造成用戶證書的撤銷。此時作廢的證書將被放入證書撤銷列表CRL中并發(fā)布出去。任何一個使用證書的實體在使用證書前都應(yīng)檢查證書是否在CRL中。這里仍以在線方式說明撤銷的過程:(1)用戶向RA服務(wù)器發(fā)送經(jīng)加密的郵件聲明要撤銷證書。(2)登記中心管理員對用戶資料進行審核,若無誤則對請求進行數(shù)字簽名并提交給CA服務(wù)器。(3)CA管理員查詢證書撤銷請求列表,選取其中的一個,驗證RA管理員的數(shù)字簽名。若正確則同意用戶的申請,同時更新CRL列表,然后將不同格式CRL返回給RA服務(wù)器。(4)登記中心服務(wù)器導(dǎo)入CRL,將CRL公布到安全服務(wù)器上供其他用戶瀏覽或下載CRL。4.4證書管理系統(tǒng)的設(shè)計證書管理主要由服務(wù)器端證書管理和客戶端證書管理兩部分組成。4.4.1服務(wù)器端證書管理系統(tǒng)服務(wù)器端主要負責(zé)頒發(fā)用戶證書,處理用戶廢棄證書請求,對密鑰備份與恢復(fù),同時也提供CA的交叉認(rèn)證。①證書服務(wù)器在通訊過程中,用戶A可能需要獲取用戶B的證書,其方式有很多種。最理想的方式是使用證書服務(wù)器。當(dāng)發(fā)布A和B的證書時,除了將證書提供給請求者外,也將證書存于證書服務(wù)器中,根據(jù)證書管理的存取操作協(xié)議,證書服務(wù)器可以采用郵件服務(wù)器、FTP服務(wù)器、LDAP服務(wù)器、Web服務(wù)器(帶數(shù)據(jù)庫)和X.500目錄的目錄形式。本系統(tǒng)使用的證書服務(wù)器就是分布式LDAP服務(wù)器,它為證書存取提供了豐富的操作命令和函數(shù)。因為基于LDAP的證書服務(wù)是一個分布式結(jié)構(gòu),當(dāng)一個服務(wù)器不能存儲一棵完整的目錄信息樹DIT(DirectoryInformationTree)的情況下,它可以存儲DIT的某一分支的條目。各個服務(wù)器間通過指針連接形成一個完整的分布式目錄。當(dāng)該證書服務(wù)器沒有用戶請求的公鑰證書entry(條目)時,可搜索其referral參數(shù)所指的其他服務(wù)器,并從中獲取用戶需要的公鑰證書。②CRL服務(wù)器當(dāng)證書必須作廢時,就需要證書吊銷機制,撤換以前發(fā)布的但現(xiàn)已無效的證書,它是影響PKI服務(wù)可靠度的關(guān)鍵因素之一,常用的方法是使用由CA定期發(fā)布由其簽名的CRL,存入CRL服務(wù)器。本系統(tǒng)的CRL服務(wù)器也是由LDAP服務(wù)器擔(dān)當(dāng)?shù)?。證書驗證者查詢CRL服務(wù)器,根據(jù)CRL中是否包含該證書序列號來判斷證書的有效性。由于CRL是定期發(fā)布的,而吊銷請求的到達是隨機的,從吊銷請求到下一個CRL發(fā)布之間的時延會帶來狀態(tài)不一致性,這會嚴(yán)重影響CA提供證書服務(wù)的質(zhì)量;因此本系統(tǒng)采用在線的證書狀態(tài)OCSP(OnlineCerificateStatusProtocol)檢查機制,來滿足那些需要提供及時的證書吊銷信息的應(yīng)用。4.4.2客戶端證書管理系統(tǒng)客戶端證書管理器目的是幫助用戶管理和使用數(shù)字證書。本系統(tǒng)客戶端證書管理器主要的功能包括:支持用戶自己證書的申請、下載、查詢、廢除等,同時能對他人證書查詢和下載;提供對所有證書或單個證書的導(dǎo)入/導(dǎo)出,即將證書從證書原介質(zhì)添加到本地硬盤或從證書管理器中導(dǎo)出存在的用戶證書?,F(xiàn)詳細說明證書的使用過程。假設(shè)用戶A向用戶B發(fā)送消息。處理流程圖如下:4.5系統(tǒng)實現(xiàn)工具簡介整個系統(tǒng)可運用Java和OpenSSL來實現(xiàn)CA,說明如下:4.5.1JAVA語言Java2集成了大量的安全工具,其中的JCE提供了可以處理加密數(shù)據(jù)、生成消息摘要、進行密鑰和證書管理等功能的類庫,可以方便而快速的開發(fā)身份認(rèn)證、數(shù)字簽名和驗證及數(shù)據(jù)加密等功能的程序,并且JAVA程序具有跨平臺運行的能力,是用來實現(xiàn)認(rèn)證中心的的理想選擇。但是它對證書的支持尚不完善,只能處理現(xiàn)有的證書,而不能生成新的證書。所以需要借助OpenSSL來實現(xiàn)生成證書的功能。4.5.2OpenSSL語言O(shè)penSSL項目是一個開放源代碼的工具包,它實現(xiàn)了安全套接層協(xié)議(SSLv2/v3)和傳輸層安全協(xié)議,并帶有一個功效完整、具有可通用性的加密技術(shù)庫OpenSSL工具包可分為三個部分:SSL函數(shù)庫、Crypto函數(shù)庫和命令行工具。SSL函數(shù)庫實現(xiàn)了安全套接層協(xié)議和傳輸層安全協(xié)議;Crypto函數(shù)庫可實現(xiàn)大多數(shù)Internet標(biāo)準(zhǔn)的加密算法;命令行工具則提供了一個從操作系統(tǒng)中直接使用以上兩個函數(shù)庫的途徑。而且命令行工具還以Crypto和SSL函數(shù)庫為基礎(chǔ)實現(xiàn)新的功能,其中就包括生成數(shù)字證書和CRL的功能,我們正是要利用OpenSSL的這兩個功能來構(gòu)建CA認(rèn)證中心。4.5.3具體實現(xiàn)整個系統(tǒng)構(gòu)建在RedHatLinux8.0平臺上,Java平臺為j2sdk1.4.0,其中已經(jīng)包括了JCE;保存證書和證書撤銷列表的證書庫采用MySQL4.0;為用戶提供訪問接口的安全服務(wù)器采用基于TTTPS的Web服務(wù)方式;Web服務(wù)頁面采用JSP技術(shù)實現(xiàn)。首先可使用OpenSSL中的Keytool工具為CA服務(wù)器生成自簽名的根證書,然后用CA的自簽名證書對注冊機構(gòu)RA服務(wù)器和安全服務(wù)器進行證書申請簽名。簽名后,將證書分別拷貝到RA服務(wù)器和安全服務(wù)器,繼續(xù)處理證書,最終完成服務(wù)器端證書的配置工作。4.6系統(tǒng)安全設(shè)計CA系統(tǒng)的設(shè)計中,首要考慮的是系統(tǒng)的安全性,這是CA系統(tǒng)至關(guān)重要的部分。在設(shè)計過程中,必須對威脅系統(tǒng)安全的各個因素綜合考慮,制定出切實可行的安全策略和防范手段。本系統(tǒng)安全設(shè)計擬從以下幾個方面考慮:4.6.1物理安全和環(huán)境安全CA系統(tǒng)的物理安全和環(huán)境安全是整個系統(tǒng)安全的基礎(chǔ),要把CA系統(tǒng)的危險降至最低限度,需要選擇適當(dāng)?shù)脑O(shè)施和位置,同時要充分考慮水災(zāi)、火警、干擾與輻射、犯罪活動等的威脅。4.6.2網(wǎng)絡(luò)安全設(shè)計網(wǎng)絡(luò)安全設(shè)計的目標(biāo)是保證網(wǎng)絡(luò)安全可靠的運行,從網(wǎng)絡(luò)拓撲結(jié)構(gòu)、網(wǎng)絡(luò)安全區(qū)域劃分、防火墻的設(shè)置、病毒防護與檢測等各個方面設(shè)計來防范來自Internet的攻擊。4.6.3通信安全性設(shè)計本方案可使用認(rèn)證系統(tǒng)設(shè)計領(lǐng)域內(nèi)已經(jīng)制定了標(biāo)準(zhǔn)化的安全API,即GSS-API(GenericSecurityService-ApplicationProgrammingInterface)公共安全服務(wù)應(yīng)用程序接口,及基于它產(chǎn)生的SPKM簡單公共密鑰機制(SimplePublic-KeyGSS-APIMechanism)所規(guī)范的協(xié)議來滿足安全通信的需求。公共安全服務(wù)API(GSS-API)以一種統(tǒng)一的模式為使用者提供安全事務(wù),由于它支持最基本的機制和技術(shù),所以保證不同的應(yīng)用環(huán)境下的可移植性。也就是說,GSS-API不依賴于某一特定的程序語言或已經(jīng)實現(xiàn)安全的機制,它只是定義了應(yīng)用程序中實現(xiàn)該方案的安全服務(wù)協(xié)議和函數(shù)。SPKM簡單公共密鑰機制為基于公共密鑰體系的在線分布式應(yīng)用環(huán)境提供認(rèn)證、密鑰建立、數(shù)據(jù)完整性驗證及數(shù)據(jù)可靠性保障服務(wù)。因為它遵從RFC-1508規(guī)定的接口,所以能被使用基于GSS-API調(diào)用的安全事務(wù)的應(yīng)用所采用。SPMK有以下優(yōu)點:1)SPMK允許在不使用安全時間戳的情況下完成單方或雙方的認(rèn)證。這使那些不能存取安全時間戳的環(huán)境能夠進行安全認(rèn)證。2)SPKM使用算法標(biāo)識去定義通信雙方所使用的各種算法。這在運行環(huán)境,未來擴展以及算法選擇上保持了最大限度的靈活性3)SPKM實現(xiàn)真正的基于非對稱算法的數(shù)字簽名。4.6.4管理員權(quán)限/級別的安全性設(shè)計整個系統(tǒng)的管理員應(yīng)按層次劃分級別,相應(yīng)的級別有相應(yīng)的管理權(quán)限,這樣才能保障CA系統(tǒng)運行的安全性。本系統(tǒng)擬將管理員劃分三個級別:首席管理員、超級管理員、普通管理員。首席管理員負責(zé)對系統(tǒng)核心Authority的管理操作。系統(tǒng)也應(yīng)要求至少兩名或三名首席管理員登陸才能進行一些諸如備份或數(shù)據(jù)恢復(fù)等敏感操作。首席管理員同時也是數(shù)據(jù)庫管理員及LDAP目錄服務(wù)器管理員。超級管理員由首席管理員在系統(tǒng)初始化時產(chǎn)生。主要負責(zé)對系統(tǒng)中下一級別管理員的管理工作,包括新建普通管理員、刪除/更改普通管理員、設(shè)置權(quán)限等操作。對于超級管理員的更改只能到Authority由首席管理員操作完成。普通管理員可以是RA管理員、審計管理員或其他自定義的管理員。他們主要負責(zé)維護系統(tǒng)正常運作的一些操作,如處理用戶證書/撤銷證書的申請、對申請進行審核、頒發(fā)CA批準(zhǔn)的證書、管理和查詢系統(tǒng)日志等日常操作。5.搭建環(huán)境及編譯5.1搭建環(huán)境目前,國外主流的電子商務(wù)安全協(xié)議在核心密碼算法上都有出口限制,如只允許40位或56位的RC4和512位的RSA算法出口等。這樣的算法強度引進后無法滿足我國電子商務(wù)實際應(yīng)用當(dāng)中的安全需求。但是,完全自主定義和開發(fā)一套安全標(biāo)準(zhǔn)體系不是一蹴而就的事情,需要人、財、物的長期投入。

因此,如何對國外主流的電子商務(wù)安全協(xié)議的安全模塊進行改造,用國內(nèi)先進的密碼算法替換其相應(yīng)的安全強度不夠的算法,變?yōu)閲a(chǎn)的強安全協(xié)議,這樣就能較好地提高我國電子商務(wù)安全技術(shù)水平。

5.2搭建步驟及其代碼下面就用OpenSSL提供的強大功能在FreeBSD平臺下進行手工簽署證書的過程。

⑴先建立一個CA的證書,首先為CA創(chuàng)建一個RSA私用密鑰:

#OpenSSLgenrsa-des3-outca.key1024

該指令中g(shù)enras表示生成RSA私有密鑰文件。

-des3表示用DES3加密該文件。

-outca.key表示生成文件ca.key。

1024是我們的RSAkey的長度。

生成server.key的時候會要你輸入一個密碼,這個密鑰用來保護你的ca.key文件,這樣即使人家偷走你的ca.key文件,也打不開,拿不到你的私有密鑰。

運行該指令后系統(tǒng)提示輸入PEMpassphrase,也就是ca.key文件的加密密碼,這里設(shè)為12345678。

⑵用下列命令查看它的內(nèi)容:

#OpenSSLrsa-noout-text-inca.key

該指令中rsa表示對RSA私有密鑰的處理。

-noout表示不打印出key的編碼版本信息。

-text表示打印出私有密鑰的各個組成部分。

-inca.key表示對ca.key文件的處理

對RSA算法進行分析可以知道,RSA的私有密鑰其實就是三個數(shù)字,其中兩個是質(zhì)數(shù)primenumbers。產(chǎn)生RSA私有密鑰的關(guān)鍵就是產(chǎn)生這兩個質(zhì)數(shù)。還有一些其他的參數(shù),引導(dǎo)著整個私有密鑰產(chǎn)生的過程。

⑶利用CA的RSA密鑰創(chuàng)建一個自簽署的CA證書

#OpenSSLreq-new-x509-days365-keyca.key-outca.crt

該指令中req用來創(chuàng)建和處理CA證書,它還能夠建立自簽名證書,做RootCA。

-new產(chǎn)生一個新的CSR,它會要輸入創(chuàng)建證書請求CSR的一些必須的信息。

-x509將產(chǎn)生自簽名的證書,一般用來做測試用,或者自己做個RootCA用。

-days365指定我們自己的CA給人家簽證書的有效期為365天。

-keyca.key指明我們的私有密鑰文件名為ca.key。

-outca.crt指出輸出的文件名為ca.crt。

執(zhí)行該指令時系統(tǒng)要求用戶輸入一些用戶的信息,如下所示:(框內(nèi)為輸入的內(nèi)容)

Usingconfigurationfrom/etc/ssl/OpenSSL.cnf

EnterPEMpassphrase:12345678

Youareabouttobeaskedtoenterinformationthatwillbeincorporated

intoyourcertificaterequest.

WhatyouareabouttoenteriswhatiscalledaDistinguishedNameoraDN.

Therearequiteafewfieldsbutyoucanleavesomeblank

Forsomefieldstherewillbeadefaultvalue,

Ifyouenter'.',thefieldwillbeleftblank.

CountryName(2lettercode)[AU]:CN(兩個字母的國家代號)

StateorProvinceName(fullname)[Some-State]:JIANGSU(省份名稱)

LocalityName(eg,city)[]:ZHANGJIAGANG(城市名稱)

OrganizationName(eg,company)[InternetWidgitsPtyLtd]:FAMILYNETWORK(公司名稱)

OrganizationalUnitName(eg,section)[]:HOME(部門名稱)

CommonName(eg,YOURname)[]:TJL(你的姓名)

EmailAddress[]:TJL@WX88.NET(Email地址)

⑷用下列命令查看生成證書的內(nèi)容:

#OpenSSLx509-noout-text-inca.crt

該指令中x509表示證書處理工具。

-noout表示不打印出key的編碼版本信息。

-text表示以文本方式顯示內(nèi)容。

-inca.crt表示對ca.crt文件進行處理

系統(tǒng)顯示證書內(nèi)容為:

Certificate:

Data:

Version:3(0x2)

SerialNumber:0(0x0)

SignatureAlgorithm:md5WithRSAEncryption

Issuer:C=CN,ST=JIANGSU,L=ZHANGJIAGANG,O=FAMILYNETWORK,OU=HOME,CN=TJL/Email=TJL@WX88.NE

Validity

NotBefore:Feb2414:49:272003GMT

NotAfter:Feb2114:49:272013GMT

Subject:C=CN,ST=JIANGSU,L=ZHANGJIAGANG,O=FAMILYNETWORK,OU=HOME,CN=TJL/Email=TJL@WX88.NET

SubjectPublicKeyInfo:

PublicKeyAlgorithm:rsaEncryption

RSAPublicKey:(1024bit)

Modulus(1024bit):

00:da:20:09:11:19:1f:12:f0:98:0c:fc:91:ac:3e:

……

22:e1:ca:04:0f:dc:e9:bd:9f

Exponent:65537(0x10001)

X509v3extensions:

X509v3SubjectKeyIdentifier:

03:B0:14:8C:5D:C6:F8:F4:B0:96:A0:CC:7C:8F:9B:00:BB:78:E6:A6

X509v3AuthorityKeyIdentifier:

keyid:03:B0:14:8C:5D:C6:F8:F4:B0:96:A0:CC:7C:8F:9B:00:BB:78:E6:A6

DirName:/C=CN/ST=JIANGSU/L=ZHANGJIAGANG/O=FAMILYNETWORK/OU=HOME/CN=TJL/Email=TJL@WX88.NET

serial:00X509v3BasicConstraints:

CA:TRUE

SignatureAlgorithm:md5WithRSAEncryption

8d:e8:46:82:40:b4:18:a2:12:9f:7a:66:e5:fc:0c:3f:77:5a:

……

04:13

從上面的輸出內(nèi)容可以看出這個證書基本包含了X.509數(shù)字證書的內(nèi)容,從發(fā)行者Issuer和接受者Subject的信息也可以看出是個自簽署的證書。

下面創(chuàng)建服務(wù)器證書簽署請求(使用指令和系統(tǒng)顯示信息基本和以上類似):

⑸首先為Apache創(chuàng)建一個RSA私用密鑰:

#OpenSSLgenrsa-des3-outserver.key1024

這里也要設(shè)定口令passphrase,生成server.key文件。

⑹用下列命令查看它的內(nèi)容:

#OpenSSLrsa-noout-text-inserver.key

⑺用server.key生成證書簽署請求CSR:

#OpenSSLreq-new-keyserver.key-outserver.csr

這里也要輸入一些請求證書的信息,和上面的內(nèi)容類似。

⑻生成證書請求后,下面可以簽署證書了,需要用到OpenSSL源代碼中的一個腳本sign.sh,簽署后就可以得到數(shù)字證書server.crt。

#sign.shserver.csr

⑼啟動安全Web服務(wù)

最后在apache服務(wù)器中進行ca認(rèn)證設(shè)置,拷貝server.crt和server.key到/usr/local/apache/conf

修改httpd.conf將下面的參數(shù)改為:

SSLCertificateFILE/usr/local/apache/conf/server.crt

SSLCertificateKeyFile/usr/local/apache/conf/server.key

可以啟動帶安全連接的Apache試一下了。

#/usr/local/apache/bin/apachectlstartssl

提示輸入passphrase(就是前面為服務(wù)器設(shè)置的口令)

6.運行結(jié)果進入CA認(rèn)證中心主界面,在個人用戶業(yè)務(wù)主界面填寫個人CA賬號和用戶密碼,點擊“登錄”按鈕點擊“證書下載”命令,彈出下載頁面,點擊“保存”按鈕,選擇保存路徑保存后,在windows資源管理器中找到該文件,右鍵單擊該文件,在快捷菜單中選“安裝證書”,出現(xiàn)“證書導(dǎo)入向?qū)А苯缑?,點擊“下一步”按鈕,此時,證書已經(jīng)被導(dǎo)入,可以在IE中檢查導(dǎo)入的正常情況。點擊IE菜單欄“工具”下的“Internet選項”,選中“內(nèi)容”選項卡,點擊“證書”按鈕,在“其他人”選項卡中可以見到SECLab證書,選中“SECLab”,點擊“查看”按鈕,可以看到該證書的詳細情況,7論文總結(jié)CA認(rèn)證技術(shù)是網(wǎng)絡(luò)安全支付的關(guān)鍵,隨著CA認(rèn)證技術(shù)的不斷發(fā)展,數(shù)字證書之間的信任模型、使用的加/解密算法、密鑰管理的方案等也在不斷的變化。網(wǎng)絡(luò),特別是Internet網(wǎng)絡(luò)的安全應(yīng)用己經(jīng)離不開CA認(rèn)證技術(shù)的支持。中國作為一個網(wǎng)絡(luò)發(fā)展大國,發(fā)展自己的CA認(rèn)證技術(shù)是很有必要而且是非常迫切的。因此,研究和開發(fā)我國自主的、完整的CA認(rèn)證系統(tǒng),以支持政府、銀行和企業(yè)安全地使用信息資源和國家信息基礎(chǔ)設(shè)施已是刻不容緩。參考文獻[1]祁明,彭麗芳.電子商務(wù)安全保密技術(shù)與應(yīng)用.華南理工大學(xué)出版社.2003,9[2]李琪.電子商務(wù)安全.重慶大學(xué)出版社.2004.6[3]徐升華.電子商務(wù)的安全技術(shù).計算機與現(xiàn)代化.1999(6)

溫馨提示

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

最新文檔

評論

0/150

提交評論