加密概念和PKI基礎(chǔ)知識(shí)簡(jiǎn)述

創(chuàng)建日期:2017-12-23 10:49:38

加密概念和PKI基礎(chǔ)知識(shí)簡(jiǎn)述

作者:Overlord_Kahn liwrml翻譯 文章來(lái)源:賽迪網(wǎng) 2003年10月16日

 

加密概念

加密是通過(guò)Intranet、Extranet和Internet進(jìn)行安全的信息交換的基礎(chǔ)。從業(yè)務(wù)的角度來(lái)看,通過(guò)加密實(shí)現(xiàn)的安全功能包括:身份驗(yàn)證,使收件人確信發(fā)件人就是他或她所聲明的那個(gè)人;機(jī)密性,確保只有預(yù)期的收件人能夠閱讀郵件;以及完整性,確保郵件在傳輸過(guò)程中沒(méi)有被更改。從技術(shù)的角度來(lái)看,加密是利用數(shù)學(xué)方法將郵件轉(zhuǎn)換為不可讀格式從而達(dá)到保護(hù)數(shù)據(jù)的目的的一門科學(xué)。

本文將介紹下列加密概念:

對(duì)稱密鑰加密:一個(gè)密鑰

公鑰加密:兩個(gè)密鑰

單向散列算法

數(shù)字簽名:結(jié)合使用公鑰與散列

密鑰交換:結(jié)合使用對(duì)稱密鑰與公鑰

對(duì)稱密鑰加密:一個(gè)密鑰

對(duì)稱密鑰加密,也叫做共享密鑰加密或機(jī)密密鑰加密,使用發(fā)件人和收件人共同擁有的單個(gè)密鑰。這種密鑰既用于加密,也用于解密,叫做機(jī)密密鑰(也稱為對(duì)稱密鑰或會(huì)話密鑰)。對(duì)稱密鑰加密是加密大量數(shù)據(jù)的一種行之有效的方法。

對(duì)稱密鑰加密有許多種算法,但所有這些算法都有一個(gè)共同的目的---可以還原的方式將明文(未加密的數(shù)據(jù))轉(zhuǎn)換為暗文。暗文使用加密密鑰編碼,對(duì)于沒(méi)有解密密鑰的任何人來(lái)說(shuō)它都是沒(méi)有意義的。由于對(duì)稱密鑰加密在加密和解密時(shí)使用相同的密鑰,所以這種加密過(guò)程的安全性取決于是否有未經(jīng)授權(quán)的人獲得了對(duì)稱密鑰。這就是它為什么也叫做機(jī)密密鑰加密的原因。希望使用對(duì)稱密鑰加密通信的雙方,在交換加密數(shù)據(jù)之前必須先安全地交換密鑰。

衡量對(duì)稱算法優(yōu)劣的主要尺度是其密鑰的長(zhǎng)度。密鑰越長(zhǎng),在找到解密數(shù)據(jù)所需的正確密鑰之前必須測(cè)試的密鑰數(shù)量就越多。需要測(cè)試的密鑰越多,破解這種算法就越困難。有了好的加密算法和足夠長(zhǎng)的密鑰,如果有人想在一段實(shí)際可行的時(shí)間內(nèi)逆轉(zhuǎn)轉(zhuǎn)換過(guò)程,并從暗文中推導(dǎo)出明文,從計(jì)算的角度來(lái)講,這種做法是行不通的。

公鑰加密:兩個(gè)密鑰

公鑰加密使用兩個(gè)密鑰:一個(gè)公鑰 和一個(gè)私鑰,這兩個(gè)密鑰在數(shù)學(xué)上是相關(guān)的。為了與對(duì)稱密鑰加密相對(duì)照,公鑰加密有時(shí)也叫做不對(duì)稱密鑰加密。在公鑰加密中,公鑰可在通信雙方之間公開傳遞,或在公用儲(chǔ)備庫(kù)中發(fā)布,但相關(guān)的私鑰是保密的。只有使用私鑰才能解密用公鑰加密的數(shù)據(jù)。使用私鑰加密的數(shù)據(jù)只能用公鑰解密。與對(duì)稱密鑰加密相似,公鑰加密也有許多種算法。然而,對(duì)稱密鑰和公鑰算法在設(shè)計(jì)上并無(wú)相似之處。您可以在程序內(nèi)部使用一種對(duì)稱算法替換另一種,而變化卻不大,因?yàn)樗鼈兊墓ぷ鞣绞绞窍嗤摹6硪环矫?,不同公鑰算法的工作方式卻完全不同,因此它們不可互換。公鑰算法是復(fù)雜的數(shù)學(xué)方程式,使用十分大的數(shù)字。公鑰算法的主要局限在于,這種加密形式的速度相對(duì)較低。實(shí)際上,通常僅在關(guān)鍵時(shí)刻才使用公鑰算法,如在實(shí)體之間交換對(duì)稱密鑰時(shí),或者在簽署一封郵件的散列時(shí)(散列是通過(guò)應(yīng)用一種單向數(shù)學(xué)函數(shù)獲得的一個(gè)定長(zhǎng)結(jié)果,對(duì)于數(shù)據(jù)而言,叫做散列算法)。將公鑰加密與其它加密形式(如對(duì)稱密鑰加密)結(jié)合使用,可以優(yōu)化性能。公鑰加密提供了一種有效的方法,可用來(lái)把為大量數(shù)據(jù)執(zhí)行對(duì)稱加密時(shí)使用的機(jī)密密鑰發(fā)送給某人。也可以將公鑰加密與散列算法結(jié)合使用以生成數(shù)字簽名。

將公鑰加密用于數(shù)字簽名

數(shù)字簽名是郵件、文件或其它數(shù)字編碼信息的發(fā)件人將他們的身份與信息綁定在一起(即為信息提供簽名)的方法。對(duì)信息進(jìn)行數(shù)字簽名的過(guò)程,需要將信息與由發(fā)件人掌握的秘密信息一起轉(zhuǎn)換為叫做簽名的標(biāo)記。數(shù)字簽名用于公鑰環(huán)境中,它通過(guò)驗(yàn)證發(fā)件人確實(shí)是他或她所聲明的那個(gè)人,并確認(rèn)收到的郵件與發(fā)送的郵件完全相同,來(lái)幫助確保電子商務(wù)交易的安全。通常,數(shù)字簽名用于以明文(如電子郵件)分發(fā)數(shù)據(jù)的情形。在這種情況下,當(dāng)郵件本身的敏感性可能無(wú)法保證加密的安全性時(shí),確保數(shù)據(jù)處于其原始格式且并非由假冒者發(fā)送,是非常重要的。

常用公鑰算法

下面是三種最常用的公鑰算法:

RSA-適用于數(shù)字簽名和密鑰交換。Rivest-Shamir-Adleman (RSA) 加密算法是目前應(yīng)用最廣泛的公鑰加密算法,特別適用于通過(guò) Internet 傳送的數(shù)據(jù)。這種算法以它的三位發(fā)明者的名字命名:Ron Rivest、Adi Shamir 和 Leonard Adleman。RSA 算法的安全性基于分解大數(shù)字時(shí)的困難(就計(jì)算機(jī)處理能力和處理時(shí)間而言)。在常用的公鑰算法中,RSA 與眾不同,它能夠進(jìn)行數(shù)字簽名和密鑰交換運(yùn)算。

DSA-僅適用于數(shù)字簽名。數(shù)字簽名算法 (Digital Signature Algorithm, DSA) 由美國(guó)國(guó)家安全署 (United States National Security Agency, NSA) 發(fā)明,已經(jīng)由美國(guó)國(guó)家標(biāo)準(zhǔn)與技術(shù)協(xié)會(huì) (National Institute of Standards and Technology, NIST) 收錄到聯(lián)邦信息處理標(biāo)準(zhǔn) (Federal Information Processing Standard, FIPS) 之中,作為數(shù)字簽名的標(biāo)準(zhǔn)。DSA 算法的安全性源自計(jì)算離散算法的困難。這種算法僅用于數(shù)字簽名運(yùn)算(不適用于數(shù)據(jù)加密)。

Diffie-Hellman-僅適用于密鑰交換。 Diffie-Hellman 是發(fā)明的第一個(gè)公鑰算法,以其發(fā)明者 Whitfield Diffie 和 Martin Hellman 的名字命名。Diffie-Hellman 算法的安全性源自在一個(gè)有限字段中計(jì)算離散算法的困難。Diffie-Hellman 算法僅用于密鑰交換。

單向散列算法

散列-也稱為散列值 或消息摘要,是一種與基于密鑰(對(duì)稱密鑰或公鑰)的加密不同的數(shù)據(jù)轉(zhuǎn)換類型。散列就是通過(guò)把一個(gè)叫做散列算法的單向數(shù)學(xué)函數(shù)應(yīng)用于數(shù)據(jù),將任意長(zhǎng)度的一塊數(shù)據(jù)轉(zhuǎn)換為一個(gè)定長(zhǎng)的、不可逆轉(zhuǎn)的數(shù)字。所產(chǎn)生的散列值的長(zhǎng)度應(yīng)足夠長(zhǎng),因此使找到兩塊具有相同散列值的數(shù)據(jù)的機(jī)會(huì)很少。發(fā)件人生成郵件的散列值并加密它,然后將它與郵件本身一起發(fā)送。而收件人同時(shí)解密郵件和散列值,并由接收到的郵件產(chǎn)生另外一個(gè)散列值,然后將兩個(gè)散列值進(jìn)行比較。如果兩者相同,郵件極有可能在傳輸期間沒(méi)有發(fā)生任何改變。

常用的單向散列函數(shù)

下面是兩個(gè)最常用的散列函數(shù):

MD5。 MD5 是由 Ron Rivest 設(shè)計(jì)的可產(chǎn)生一個(gè) 128 位的散列值的散列算法。MD5設(shè)計(jì)經(jīng)過(guò)優(yōu)化以用于Intel處理器。這種算法的基本原理已經(jīng)泄露,這就是為什么它不太受歡迎的原因。

SHA-1。與 DSA 公鑰算法相似,安全散列算法1(SHA-1)也是由NSA設(shè)計(jì)的,并由NIST將其收錄到 FIPS 中,作為散列數(shù)據(jù)的標(biāo)準(zhǔn)。它可產(chǎn)生一個(gè) 160 位的散列值。SHA-1是流行的用于創(chuàng)建數(shù)字簽名的單向散列算法。

數(shù)字簽名:結(jié)合使用公鑰與散列算法

可以結(jié)合使用公鑰技術(shù)與散列算法來(lái)創(chuàng)建數(shù)字簽名。數(shù)字簽名可用作數(shù)據(jù)完整性檢查并提供擁有私鑰的憑據(jù)。簽署和驗(yàn)證數(shù)據(jù)(由啟用PKI的應(yīng)用程序如Microsoft Outlook完成)的步驟如下:

發(fā)件人將一種散列算法應(yīng)用于數(shù)據(jù),并生成一個(gè)散列值。

發(fā)件人使用私鑰將散列值轉(zhuǎn)換為數(shù)字簽名。

然后,發(fā)件人將數(shù)據(jù)、簽名及發(fā)件人的證書發(fā)給收件人。

收件人將該散列算法應(yīng)用于接收到的數(shù)據(jù),并生成一個(gè)散列值。

收件人使用發(fā)件人的公鑰和新生成的散列值驗(yàn)證簽名。

對(duì)用戶而言這一過(guò)程是透明的。

散列算法處理數(shù)據(jù)的速度比公鑰算法快得多。散列數(shù)據(jù)還縮短了要簽名的數(shù)據(jù)的長(zhǎng)度,因而加快了簽名過(guò)程。當(dāng)創(chuàng)建或驗(yàn)證簽名時(shí),公鑰算法必須且只需轉(zhuǎn)換散列值(128或160位的數(shù)據(jù))。創(chuàng)建簽名和驗(yàn)證簽名的詳細(xì)步驟取決于所采用的公鑰算法。

密鑰交換:結(jié)合使用對(duì)稱密鑰與公鑰

對(duì)稱密鑰算法非常適合于快速并安全地加密數(shù)據(jù)。但其缺點(diǎn)是,發(fā)件人和收件人必須在交換數(shù)據(jù)之前先交換機(jī)密密鑰。結(jié)合使用加密數(shù)據(jù)的對(duì)稱密鑰算法與交換機(jī)密密鑰的公鑰算法可產(chǎn)生一種既快速又靈活的解決方案。

基于公鑰的密鑰交換步驟如下:

發(fā)件人獲得收件人的公鑰。

發(fā)件人創(chuàng)建一個(gè)隨機(jī)機(jī)密密鑰(在對(duì)稱密鑰加密中使用的單個(gè)密鑰)。

發(fā)件人使用機(jī)密密鑰和對(duì)稱密鑰算法將明文數(shù)據(jù)轉(zhuǎn)換為暗文數(shù)據(jù)。

發(fā)件人使用收件人的公鑰將機(jī)密密鑰轉(zhuǎn)換為暗文機(jī)密密鑰。

發(fā)件人將暗文數(shù)據(jù)和暗文機(jī)密密鑰一起發(fā)給收件人。

收件人使用其私鑰將暗文機(jī)密密鑰轉(zhuǎn)換為明文。

收件人使用明文機(jī)密密鑰將暗文數(shù)據(jù)轉(zhuǎn)換為明文數(shù)據(jù)。

同樣,這些步驟是由啟用PKI的應(yīng)用程序(如Microsoft Outlook)來(lái)完成的,并且對(duì)用戶來(lái)說(shuō)是透明的。

公鑰基本結(jié)構(gòu)的概念

術(shù)語(yǔ)公鑰基本結(jié)構(gòu)(PKI)用于描述管制或操縱證書與公鑰及私鑰的策略、標(biāo)準(zhǔn)和軟件。實(shí)際上,PKI 是指由數(shù)字證書、證書頒發(fā)機(jī)構(gòu)(CA) 以及對(duì)電子交易所涉及各方的合法性進(jìn)行檢查和驗(yàn)證的其它注冊(cè)機(jī)構(gòu)組成的一套系統(tǒng)。PKI的有關(guān)標(biāo)準(zhǔn)仍處于不斷發(fā)展之中,即使這些標(biāo)準(zhǔn)已被作為電子商務(wù)的要素而廣泛實(shí)施。

PKI一般包括:

證書

證書頒發(fā)機(jī)構(gòu) (CA)

不可更改的CA層次結(jié)構(gòu)

注冊(cè)

證書登記

證書吊銷

證書鏈驗(yàn)證

證書

公鑰證書,通常簡(jiǎn)稱為證書,用于在 Internet、Extranet 和 Intranet 上進(jìn)行身份驗(yàn)證并確保數(shù)據(jù)交換的安全。證書的頒發(fā)者和簽署者就是眾所周知的證書頒發(fā)機(jī)構(gòu) (CA)。頒發(fā)證書的實(shí)體是證書的主體。公鑰證書是以數(shù)字方式簽名的聲明,它將公鑰的值與持有相應(yīng)私鑰的主體(個(gè)人、設(shè)備和服務(wù))的身份綁定在一起。通過(guò)在證書上簽名,CA 可以核實(shí)與證書上公鑰相應(yīng)的私鑰為證書所指定的主體所擁有??梢詾楦鞣N目的頒發(fā)證書,如 Web 用戶身份驗(yàn)證、Web 服務(wù)器身份驗(yàn)證、使用安全/多用途 Internet 郵件擴(kuò)充協(xié)議 (Secure/Multipurpose Internet Mail Extensions, S/MIME) 的安全電子郵件、IP 安全性 (IP Security)、安全套接字協(xié)議層/事務(wù)層安全性 (Secure Sockets Layer/Transaction Layer Security, SSL/TLS) 和代碼簽名。如果在一個(gè)組織內(nèi)部使用 Windows 2000 企業(yè)證書頒發(fā)機(jī)構(gòu),證書可用于登錄到 Windows 2000 域。證書還可以由一個(gè) CA 頒發(fā)給另一個(gè) CA,以建立證書層次結(jié)構(gòu)。

可以通過(guò)多個(gè)名稱來(lái)識(shí)別主體,如用戶主要名稱(用于最終用戶證書)、目錄名、電子郵件名稱和 DNS 域名等。證書還應(yīng)包含下列信息:

證書的有效期。

證書的序列號(hào),CA 應(yīng)保證該序列號(hào)是唯一的。

CA 的名稱以及用于簽署該證書的密鑰。

CA 所遵循的用來(lái)確定證書主體身份的策略的標(biāo)識(shí)符(稍后將詳細(xì)介紹 CA 策略)。

在證書中標(biāo)識(shí)的密鑰對(duì)(公鑰及相關(guān)的私鑰)的用法。

證書吊銷列表 (CRL) 的位置,這是一個(gè)由 CA 維護(hù)并發(fā)布的列出已被吊銷的證書的文檔。為確保其完整性,CRL 是用 CA 的私鑰簽署的。

證書提供了一個(gè)在公鑰和擁有相應(yīng)私鑰的實(shí)體之間建立關(guān)系的機(jī)制。目前最常用的證書格式通過(guò) ITU-T X.509 版本 3 (X.509v3) 國(guó)際標(biāo)準(zhǔn)定義。RFC 2459 是 X.509v3 的一個(gè)配置文件,進(jìn)一步闡明了 X.509v3 中定義的字段。Windows 2000 PKI 采用 X.509v3 標(biāo)準(zhǔn)。Windows 證書是按照 RFC 2459 中的說(shuō)明編程的,但仍然叫做 X.509v3 證書。 ITU-T X.509 并非證書的唯一格式。例如,Pretty Good Privacy (PGP) 安全電子郵件依賴 PGP 所獨(dú)有的一種證書。

證書頒發(fā)機(jī)構(gòu)

證書頒發(fā)機(jī)構(gòu) (CA) 是一個(gè)向個(gè)人、計(jì)算機(jī)或任何其它申請(qǐng)實(shí)體頒發(fā)證書的可信實(shí)體。CA 受理證書申請(qǐng),根據(jù)該 CA 的策略驗(yàn)證申請(qǐng)人的信息,然后使用它的私鑰把其數(shù)字簽名應(yīng)用于證書。然后,CA 將該證書頒發(fā)給該證書的主體,作為 PKI 內(nèi)部的安全憑據(jù)。由于不同的 CA 使用不同的方法驗(yàn)證公鑰與主體之間的綁定,在選擇信任該頒發(fā)機(jī)構(gòu)之前,理解該 CA 的策略是非常重要的。

CA 可以是遠(yuǎn)程的第三方機(jī)構(gòu),如 VeriSign。作為選擇,也可以是您創(chuàng)建的供您所在組織使用的 CA,例如,通過(guò)安裝 Windows 2000 證書服務(wù)即可創(chuàng)建一個(gè) CA。每個(gè) CA 對(duì)證書申請(qǐng)人可能有完全不同的身份憑據(jù)要求,如 Windows 2000 域帳戶、職員標(biāo)記、駕駛執(zhí)照、公證請(qǐng)求或?qū)嶋H住址。

CA 策略

CA 根據(jù)也已確立的一套標(biāo)準(zhǔn)向申請(qǐng)人頒發(fā)證書。CA 在受理證書請(qǐng)求(以及頒發(fā)證書、吊銷證書和發(fā)布 CRL)時(shí)所采用的一套標(biāo)準(zhǔn)被稱為 CA 策略。通常,CA 以一種叫做證書慣例聲明 (Certification Practice Statement, CPS) 的文檔發(fā)布其策略。

證書頒發(fā)機(jī)構(gòu)的類型

CA 的類型包括以下三種:

自簽名 CA。在自簽名 CA 中,證書中的公鑰和用于驗(yàn)證證書的密鑰是相同的。一些自簽名 CA 是根 CA

從屬 CA。在從屬 CA 中,證書中的公鑰和用于核實(shí)證書的密鑰是不同的。一個(gè) CA 向另一個(gè) CA 頒發(fā)證書的過(guò)程叫做交叉認(rèn)證。

根 CA。根 CA 是一種特殊的 CA,它受到客戶無(wú)條件地信任,位于證書層次結(jié)構(gòu)的最高層。所有證書鏈均終止于根 CA。根頒發(fā)機(jī)構(gòu)必須對(duì)它自己的證書簽名,因?yàn)樵谧C書層次結(jié)構(gòu)中再也沒(méi)有更高的認(rèn)證機(jī)構(gòu)了。

所有自簽名 CA 都是根 CA,因?yàn)榈阶院灻?CA 時(shí)證書鏈就終止了。

不可更改的 CA 層次結(jié)構(gòu)

管理員可以創(chuàng)建 CA 的層次結(jié)構(gòu),從根 CA 證書開始,然后添加中級(jí) CA,每一個(gè) CA 都可以為其從屬 CA 頒發(fā)證書。當(dāng) CA 向最終實(shí)體(用戶)頒發(fā)證書時(shí),證書鏈就終止了。

根 CA 證書的分發(fā)費(fèi)用最高,因?yàn)槿绻_始改變根證書,就必須重建整個(gè)PKI。如果根證書改變了,就必須吊銷組織內(nèi)所有客戶端的舊的根證書,并添加新的根證書。另外,必須重新頒發(fā)由根 CA 頒發(fā)的、再由從屬 CA 頒發(fā)給最終實(shí)體的所有證書。因此,在部署 CA 層次結(jié)構(gòu)時(shí),使用少量的長(zhǎng)壽命根CA可提供最經(jīng)濟(jì)的解決方案。根CA非常重要-因?yàn)樗鼈儽粺o(wú)條件地信任,因?yàn)樗鼈兪亲C書鏈的頂點(diǎn)-因此,在分發(fā)證書時(shí)要有一個(gè)圈外的身份驗(yàn)證。也就是說(shuō),由于根 CA 是自簽名的,所以必須有人來(lái)證明根證書是真品。

因?yàn)樽罱K實(shí)體要比 CA 多得多,所以向最終實(shí)體頒發(fā)證書的 CA 使用私鑰在大量的數(shù)據(jù)上簽名。用來(lái)對(duì)數(shù)據(jù)簽名的密鑰使用得越頻繁,加密數(shù)據(jù)受到攻擊的可能性就越大。因此,為了保持安全,向最終實(shí)體頒發(fā)證書的聯(lián)機(jī) CA 必須經(jīng)常更換其簽名密鑰。

向最終實(shí)體頒發(fā)證書的 CA 具有的吊銷證書列表,要比中級(jí)或根 CA 的列表大得多(這些 CA 僅向其它 CA,更多的是從屬 CA 頒發(fā)證書)。其部分原因是因?yàn)樽罱K實(shí)體要比 CA 證書多得多。另外,有許多理由可以解釋為什么必須吊銷最終實(shí)體的證書,如職員改變了工作或離開了公司。

CA 發(fā)布吊銷證書列表(CRL),其中列出了不應(yīng)再使用的證書。被吊銷證書的有關(guān)條目將一直保留在 CRL 列表中,直至證書的有效期 結(jié)束之后,CA 才可將該證書從列表中刪除。CRL 中的條目越多,CRL 就越大,其下載時(shí)間就越長(zhǎng)。通常,只有使用較慢的網(wǎng)絡(luò)鏈路(如撥號(hào)連接)的用戶才會(huì)遇到下載時(shí)間問(wèn)題。CA 還可以管理 CRL 列表的大小。一種方法是維護(hù)多個(gè)列表,稱為分區(qū) CRL。另一種方法是,縮短已頒發(fā)證書的有效期,從而加快 CA 從列表中刪除吊銷證書的速度。

許多應(yīng)用程序必須能夠查明證書最近的吊銷狀態(tài)信息。只有一個(gè)聯(lián)機(jī) CA 能夠發(fā)布有關(guān)證書狀態(tài)的當(dāng)前信息。由脫機(jī)CA公布的吊銷狀態(tài),必須使用圈外的方法發(fā)布到聯(lián)機(jī)位置。

大多數(shù)容易受到攻擊的 CA 都是處于聯(lián)機(jī)狀態(tài)的、物理安全措施較差并簽署了大量證書的 CA。因此,建立根 CA和從屬CA時(shí),應(yīng)該平衡一下安全性和可用性。通常,建議采用三級(jí)層次結(jié)構(gòu),即一個(gè)脫機(jī)的獨(dú)立根 CA、一個(gè)脫機(jī)的獨(dú)立從屬策略 CA 和一個(gè)聯(lián)機(jī)從屬頒發(fā)企業(yè) CA。

脫機(jī)根CA。 在設(shè)計(jì) CA 的層次結(jié)構(gòu)時(shí),根CA的安全級(jí)別應(yīng)設(shè)為最高。根CA應(yīng)以脫機(jī)狀態(tài)保存在安全的位置,并且用它只簽署少量證書??赡艿脑挘瑧?yīng)該將CA和密鑰保存在專門的保管庫(kù)中,并且至少同時(shí)有兩位操作員進(jìn)入該保管庫(kù),一位執(zhí)行規(guī)定的操作,另一位審核其操作。(在Windows 2000 網(wǎng)絡(luò)中,設(shè)計(jì)了獨(dú)立的 CA,以便它們脫機(jī)運(yùn)行。)

脫機(jī)中級(jí)CA。在一個(gè)根CA下面可以有一個(gè)或多個(gè)從屬CA。將中級(jí)從屬CA設(shè)為脫機(jī)的機(jī)器,可以提高該 CA 的安全性。

聯(lián)機(jī)頒發(fā)CA。 CA 鏈中最后一級(jí)的 CA 必須處于聯(lián)機(jī)狀態(tài),因此可用于受理來(lái)自眾多客戶機(jī)的證書申請(qǐng)。根 CA下面的聯(lián)機(jī) CA 也可以經(jīng)常發(fā)布最新的吊銷狀態(tài)信息。管理員可以頻繁地更改這種 CA 的密鑰,因?yàn)轭C發(fā)新證書的開銷(管理方面的開銷)是最低的。從屬 CA 并不完全是可任意使用的,但通過(guò)攻擊從屬 CA 并不能得到多少有價(jià)值的東西,而且高級(jí) CA 通過(guò)吊銷證書即可輕而易舉地阻擋這種攻擊。

注冊(cè)

注冊(cè) 就是主體向 CA 自我介紹的過(guò)程。在申請(qǐng)證書時(shí),注冊(cè)可以是隱含的,或通過(guò)為主體提供擔(dān)保的另一個(gè)可信實(shí)體(如智能卡登記站)來(lái)完成,或者在收到來(lái)源可信(如來(lái)自域管理員)的信息時(shí)自動(dòng)完成。一旦向 CA 進(jìn)行了注冊(cè),只要符合按照 CA 策略建立的標(biāo)準(zhǔn),證書即被頒發(fā)給該主體。

證書登記

證書登記 就是最終實(shí)體進(jìn)行證書申請(qǐng)并從 CA 接收證書的過(guò)程。證書申請(qǐng)就是向 CA 提供身份信息,該信息隨后將成為所頒發(fā)證書的一部分。CA 根據(jù)一套標(biāo)準(zhǔn)受理申請(qǐng),該標(biāo)準(zhǔn)可能要求進(jìn)行脫機(jī)的、非自動(dòng)的身份驗(yàn)證(圈外的身份驗(yàn)證)。如果申請(qǐng)被成功受理,CA 隨后將向該用戶頒發(fā)證書。

通過(guò)注冊(cè)機(jī)構(gòu)進(jìn)行證書登記

一種特殊的證書登記可通過(guò)注冊(cè)機(jī)構(gòu) (Registration Authority, RA) 來(lái)完成,RA 可為 CA 提供擔(dān)保,以便將公鑰與預(yù)期的證書持有人的身份及屬性綁定在一起。RA 是擁有特殊證書的主體。這種特殊的證書包含有可以向CA表明主體身份的信息。通常,RA 在公鑰和主體之間建立綁定,然后在主體生成的申請(qǐng)上簽名,以便向 CA 提供該 RA 即將為綁定擔(dān)保的證據(jù)。本質(zhì)上,使用 RA 是管理委派的一種形式-CA 委派 RA 執(zhí)行驗(yàn)證公鑰和實(shí)體之間綁定的任務(wù)。

RA 生成在主體和公鑰之間建立的牢固綁定的證書。在 Windows 2000 操作系統(tǒng)中,證書服務(wù)使用域身份驗(yàn)證來(lái)識(shí)別申請(qǐng)大多數(shù)類型證書的用戶身份。創(chuàng)建智能卡登錄證書的 Windows 2000 智能卡登記站由 RA 使用。RA 可驗(yàn)證智能卡收件人的身份,同時(shí)提供比域身份驗(yàn)證單獨(dú)完成的主體與公鑰之間的綁定更加牢固的綁定。

證書吊銷

證書具有一個(gè)指定的壽命,但 CA 可通過(guò)稱為證書吊銷的過(guò)程來(lái)縮短這一壽命。CA 發(fā)布一個(gè)證書吊銷列表 (CRL),列出被認(rèn)為不能再使用的證書的序列號(hào)。CRL 指定的壽命通常比證書指定的壽命短得多。CA 也可以在 CRL 中加入證書被吊銷的理由。它還可以加入被認(rèn)為這種狀態(tài)改變所適用的起始日期。

可將下列情況指定為吊銷證書的理由:

泄露密鑰、泄露 CA、從屬關(guān)系改變、被取代、業(yè)務(wù)終止

證書持有(這是唯一讓您能夠改變被吊銷證書狀態(tài)的理由碼,在證書狀態(tài)有問(wèn)題的情況下非常有用)

由 CA吊銷證書意味著,CA 在證書正常到期之前撤銷其允許使用該密鑰對(duì)的有關(guān)聲明。在吊銷的證書到期之后,CRL 中的有關(guān)條目被刪除,以縮短 CRL 列表的大小。

在驗(yàn)證簽名期間,應(yīng)用程序可以檢查 CRL,以確定給定證書和密鑰對(duì)是否仍然可信。如果不可信,應(yīng)用程序可以判斷吊銷的理由或日期對(duì)使用有疑問(wèn)證書是否有影響。如果該證書被用來(lái)驗(yàn)證簽名,且簽名的日期早于 CA 吊銷該證書的日期,那么該簽名仍被認(rèn)為是有效的。

應(yīng)用程序獲得 CRL 之后,由客戶機(jī)緩存 CRL ,在它到期之前客戶機(jī)將一直使用它。如果 CA 發(fā)布了新的 CRL,擁有有效 CRL 的應(yīng)用程序并不使用新的 CRL,直到應(yīng)用程序擁有的 CRL 到期為止。

證書鏈確認(rèn)

Microsoft CryptoAPI 提供了一個(gè)標(biāo)準(zhǔn)的框架,應(yīng)用程序可用此框架來(lái)獲得加密服務(wù)和數(shù)字證書服務(wù)。除了 CryptoAPI 為 Windows 95、Windows 98、Windows NT 和 Windows 2000 提供的標(biāo)準(zhǔn)服務(wù)以外,第三方供應(yīng)商可開發(fā)并銷售他們自己的插件模塊,提供附加的加密服務(wù)。

在 Windows 網(wǎng)絡(luò)中,為新證書生成一個(gè)請(qǐng)求時(shí),該請(qǐng)求中的信息首先被從請(qǐng)求程序傳遞給 CryptoAPI。然后,CryptoAPI 把相應(yīng)的數(shù)據(jù)傳遞給一個(gè)稱為加密服務(wù)提供程序 (CSP)的程序,該程序安裝在您的計(jì)算機(jī)上,或安裝在您的計(jì)算機(jī)可以訪問(wèn)的某種設(shè)備(如智能卡)上。CSP 是一個(gè)執(zhí)行諸如機(jī)密密鑰交換、數(shù)據(jù)的數(shù)字簽名以及公鑰身份驗(yàn)證之類的加密操作的獨(dú)立軟件模塊。

 
  • 聯(lián)系方式

  • 400-707-3355(24小時(shí)客服電話)
  • 400-707-3355轉(zhuǎn)9(投訴電話)
  • hebca@hebca.com(投訴郵箱)
? 版權(quán)所有 冀ICP備11021634號(hào)-1 客服熱線:400-707-3355    冀公網(wǎng)安備 13010402001362號(hào)
在線客服