【正文】
數(shù)字方式簽署該證書。如果對 CA 進行配置,讓其使用一個證書庫。那么它將會把新生成的證書存儲在該證書庫中。CA 還會把這個新證書分發(fā)給 Fran。CA 通過電子郵件把證書傳送給 Fran,或者給她發(fā)送一個 URL,以后 Fran 就可以使用它獲取該證書。當必須撤銷某證書時,CA 將為該證書的創(chuàng)建撤銷信息,并管理該信息。證書撤銷可以由 Fran 發(fā)起,或者由 CA 的操作人員發(fā)起。CA 負責認證該撤銷請求,從而確保冒名頂替無法撤銷該用戶的證書。在撤銷證書時,CA 可以從證書庫中刪除該證書,或者只把該證書標記為“已撤銷” 。通常情況下,CA 將通知 Fran 她的證書已被撤銷。CA 還將把已撤銷證書的序列號添加到證書撤銷清單(CRL,Certificate Revocation List)中。 注冊權(quán)威機構(gòu)RA 是可選的實體,用于分配 CA 的工作量。RA 不會執(zhí)行任何其 CA 無法執(zhí)行的服務。RA 的基本職責有認證服務和驗證服務。RA 將對定向到 CA 的各種服務請求進行認證??蓪?RA 配置為代表 CA 處理認證請求或撤銷請求,或者這兩種服務。在認證請求之后(即確定該請求來自于合適的實體之后),RA 通常會驗證請求的內(nèi)容。RA 擔當了 CA 的前端處理器的角色,執(zhí)行 CA 的策略。所以,RA 應該專門為單獨的CA 服務,但 CA 可以由多個 RA 協(xié)助。在證書上生成數(shù)字簽名是計算密集型活動。RA 使得 CA 能夠最大限度地專注于這種加密操作。CA 可能仍然會負責與證書庫進行交互,并仍然應該簽署 CRL 及證書。然而,通過把一些職責轉(zhuǎn)移給 RA,CA 就能夠顯著提高其對終端實體請求的響應時間。 證書庫證書庫是了 CA 發(fā)行證書的數(shù)據(jù)庫。CA 把自己生成的每個證書發(fā)布到證書庫中。證書庫能夠被 PKI 的所有用戶作為證書的中心源泉,因此也可以作為公鑰源。證書庫還可以作為 CRL 的中央位置。證書庫可以使用不同的數(shù)據(jù)庫技術(shù)來實施,但 目錄正贏得人們的普遍認同。對于存儲證書而言, 惟一名稱標識的。訪問存儲在 目錄中的證書或 CRL 的方法是 LDAP(輕量型目錄訪問協(xié)議)。提供 LDAP 接口的應用程序為 LDAP 服務器。用戶可以向 LDAP 服務器發(fā)送 LDAP 查詢,以獲取某個證書或 CRL。該查詢應該指定部分終端實體或者完全的 惟一名稱以搜索證書,或者指定 CA 的 來搜索 CA 證書或 CRL。19 證書管理發(fā)行的證書只具備有限的有效期。當某人改變自己與大學或公司的從屬關系時,就可以改變 CA 認證的終端實體的身份。證書中公鑰的安全性可能會受到許多事情的破壞,如私鑰的意外暴露或者攻擊者成功破解了密鑰。由于所有這些原因,證書必須只有臨時的有效性。由于證書的有效性狀態(tài)發(fā)生了變化,所以管理證書對于 PKI 而言是必要的。證書的管理過程中有一個強制性的階段——證書發(fā)行。盡管 CA 可以在沒有請求的情況下分發(fā)證書,但通常情況下,為了響應認證請求才會發(fā)行證書。在某些情況下,已發(fā)行的證書可以進行延期。當證書過期或明確撤銷時,就到了證書的終結(jié)點。 證書創(chuàng)建Fran 可以使用一些技術(shù)從 CA 處請求證書。在退化情況下,她沒有進行任何請求;CA 為她創(chuàng)建了一個證書。這項技術(shù)還需要 CA 去創(chuàng)建非對稱密鑰對,從而使公鑰包含在證書中。一些 CA 會自動創(chuàng)建由硬件設備使用的證書,比如使用該技術(shù)的調(diào)制解調(diào)器。 證書使用Fran 獲得證書后,CA 同時給她生成了密鑰,F(xiàn)ran 可以使用密鑰進行數(shù)字簽名,而將她的證書公布在 CA 服務器上,其他人可以通過 CA 服務器上 Fran 的證書進行簽名驗證。有了證書后,F(xiàn)ran 對她自己簽署過的文件必須負責,而且無法抵賴。 證書延期由于某些原因,F(xiàn)ran 可能需要延期其證書的有效期。她的當前證書可能要過期了;她可能需要包含不同信息的證書。比如證書擴展域中使用不同的密鑰;她可能需要重新認證現(xiàn)有的公鑰;或者她可能需要認證一個新的密鑰。當 CA 同意了她的延期請求時,會給她發(fā)行一個新的證書,并根據(jù)選擇把新的證書發(fā)布到自己的證書庫中。延期請求比原始的證書請求要簡單。當 CA 從 Fran 處收到認證請求時,必須驗證她的身份。然而,當 Fran 發(fā)送延期請求時,她就可以使用該證書相匹配的私鑰來包含自己現(xiàn)有的證書和簽名。這就可以起到身份認證的作用。所以,對于 CA 而言,更容易將證書延期。 證書撤銷所有證書都有有效期,并且所有證書最終都會過期。然而,通常情況下,有必要在證書過期之前撤銷證書。撤銷證書最常見的原因就是 CA 認證過的身份已經(jīng)發(fā)生了變化。也許 Fran 已經(jīng)從發(fā)行證書時就讀的大學中畢業(yè)了。如果 CA 要撤銷 Fran 的證書,那么它必須有一種通知 Ezra 的方式,以告訴 Ezra 該證書已經(jīng)不再生效了。證書撤銷清單(CRL)是一種傳播撤銷信息的方式,也是最常見的方式。CRL 中包含了一個時間戳,指出 CA 何時發(fā)行了它。CA 使用了相同的私鑰來簽署CRL,該私鑰同時還用來簽署證書。所以,Ezra 通過依賴于驗證 CA 自我簽署證書的相同信任基礎設施,就可以驗證 CRL 上的 CA 簽名。CRL 通常作為證書存儲在相同的證書庫中,目的是為了簡化獲取過程。可選的 CRL 分發(fā)點可以包含在證書的擴展域中,以20指出用戶該在什么位置獲得發(fā)行 CA 的 CRL。 認證模型前面介紹過,在 PKI 中,信任是最基本的。證書的持有者和使用者都必須信任發(fā)行這些證書的 CA。前面討論過的信任模型是最基本的,只存在一個 CA,沒有中間 CA,終端實體直接信任此 CA 即可。認證鏈的長度和鏈上的實體是相關的,它們影響了證書的使用者必須實施的鏈驗證過程的復雜程度。如果 CA 向 Fran 發(fā)行了一個證書,該 CA的自簽證書是得到 Ezra 直接信任的,那么他就能夠很快驗證其證書鏈。這里的驗證鏈只有兩個證書的長度。當 CA 把證書發(fā)行給另一個人時,認證鏈或認證路徑就會延長。認證信任模型的特色就是認證路徑中 CA 之間的關系。PKI 服務于用戶群體。更大的用戶群體很難通過一個 CA 來管理。原因包括一臺單獨機器上的計算要求以及認證大量個人身份的管理難度。因此需要建立一種認證模型來組織 PKI。目前常用的信任模型有三種:嚴格層次模型、交叉信任模型、和網(wǎng)狀模型。 層次模型通常情況下,為大規(guī)模的群體實施 PKI 的最好方法就是按分層機構(gòu)來組織 PKI。在層次機構(gòu)的 PKI 中,CA 的關系組織成樹狀結(jié)構(gòu)。只有一個 CA 的證書是自簽的。這個根CA(root CA)把證書分發(fā)給其他 CA(中間 CA)。中間 CA 可以把證書發(fā)行給其他中間 CA或底層 CA,也就是葉級 CA。只有葉級 CA 才可以把證書發(fā)行給用戶群體中的終端實體。根 CA 將控制自己所有從屬 CA 的策略,包括可以有多少級中間 CA 以及每個葉級 CA 應該把證書發(fā)行給用戶群體的那個子組。分層 PKI 中的所有認證路徑都是單向的。從終端實體證書到根的路徑中,每一個CA 都有更大的權(quán)限。分層 PKI 適合自身就是按層次結(jié)構(gòu)進行組織的機構(gòu),如大學或公司。整個大學中的根 CA 把證書發(fā)給組成該大學的各個學院的中間 CA。這些學院的 CA把證書發(fā)給各系的葉 CA。最后,這些 CA 將負責把證書發(fā)給本系的全體教員和學生。如果 Fran 和 Ezra 都是該大學的一員,則為了在 Fran 的數(shù)字簽名中建立信任,Ezra 將驗證證書鏈,直至大學的根 CA,根 CA 是 Ezra 本來就信任的。圖 43 中顯示了一個層次PKI 模型。哈師大藝術(shù)學院 人文學院根 CA中間 CA美術(shù)系中文系哲學系葉 CA21圖 43 層次模型 PKI 交叉信任模型如果錄取 Ezra 的大學與 Fran 的大學不同,那么,在信任 Fran 的數(shù)字簽名過程中,Ezra 可能會遇到一些困難。他可以獲得 Fran 的根 CA 自簽名書的副本,把它放在可信根 CA 的數(shù)據(jù)庫中。如果他與不同大學中的很多學院進行協(xié)調(diào),則這個工作量非常繁重。為了在各個獨立的 PKI 之間擴展信任模型,各獨立 PIK 中的 CA 應該彼此發(fā)行證書。這時,CA 向其他 CA 發(fā)行證書,這叫做交叉證書(crosscertificate),并且使用它們的PKI 就是交叉認證 PKI(crosscertification PKI)。交叉證書可以在各個級別上鏈接PKI,從根到根的交叉認證,到根到中間 CA 的交叉認證,繼而到中間 CA 到中間 CA 的交叉認證。圖 44 交叉認證 PKI 網(wǎng)狀模型交叉認證公給 PKI 信任模型的完整性帶來嚴重的影響。每次一個 CA 認證另外一個CA 時,實際上就是要求它自己的終端實體去信任的另一個 CA 的誰足夠安全。這可能是在冒險,然而如果第二個 CA 接著認證了第 3 個 CA,則風險就更大。這時,第一個 CA的最終用戶將信任由第 3 個 CA 發(fā)行的證書,第一個 CA 可能從來就沒有打算讓這種情況發(fā)生,要解決這個問題,第一個 CA 可認證第二個 CA,但其前提條件是第二個 CA 不會再認證其他 CA,或者,必須在第一個 CA 同意的規(guī)則下進行,這是不切實際的。另一種可能性是,交叉認證中包含的所有 CA 都彼此認證,這就創(chuàng)建了一個網(wǎng)格 PKI,它可以包含根 CA 的交叉認證,或者任何交叉認證級別的所有 CA,通過明確地與所有其他終端實體根 CA 根 CA 根 CA22CA 建立起信任關系,交叉認證過的 CA 對另一個 CA 進行認證,于是就消除了安全問題的風險。所以,網(wǎng)格 PKI 可以比交叉認證 PKI 的常規(guī)情形更加安全。遺憾的是,隨著所包含的 CA 數(shù)量呈線性增長,網(wǎng)格 PKI 中誰的數(shù)量會呈幾何增長。然后,網(wǎng)格 PKI 可能會變得無法管理。圖 44 和圖 45 分別說明了交叉認證 PKI 和網(wǎng)格 PKI。 圖 45 網(wǎng)狀 PKI 模型橋式(bridge)CA 是擔當交叉認證中樞的 CA。它使各個獨立的分層結(jié)構(gòu)和網(wǎng)格的PKI 進行互連,而不會導致產(chǎn)生完整交叉認證網(wǎng)格的系統(tǒng)開銷。分層 PKI 的根 CA 或網(wǎng)格中的任何 CA 將使用橋 CA 進行交叉認證。為了使橋 CA 能夠發(fā)揮作用,所有加入的 CA都必須服從橋 CA 的認證實踐標準。橋 CA 并不是根 CA,終端實體不應該把橋 CA 當作可信根 CA。美國聯(lián)邦政府正在開發(fā)名為“美國聯(lián)邦橋式認證權(quán)威機構(gòu)”(Federal Bridge Certification Authority,FBCA)的橋 CA。FBCA 設計用來在屬于政府機構(gòu)的 CA 上進行交叉認證。FBCA 的作用是建立一種新方法的模型,使得政府 PKI、商業(yè) PKI 和學術(shù) PKI能夠整合起來。在能夠使用普遍和可靠的 PKI 之前,還有許多挑戰(zhàn)有特克服,然而在PKI 信任模型的標準化和可互操作方面取得的改進,正帶領著我們趁著正確的方向前進。根 CA 根 CA根 CA23第五章 數(shù)字簽名的應用分析目前數(shù)字簽名己經(jīng)廣泛應用于商業(yè)、金融、軍事等領域,尤其是在網(wǎng)絡通信、電子郵件、電子商務、電子政務方面。 電子郵件和數(shù)據(jù)交換S/MIME 是安全電子郵件的一種規(guī)范。全稱“安全的多功能互聯(lián)網(wǎng)郵件擴展”協(xié)議。它在原有的 MIME 郵件規(guī)范的基礎上,新增了許多強有力的安全功能。安全電子郵件提供郵件的加密和簽名,利用公鑰算法保證用戶的簽名郵件不會被篡改,而加密郵件除了郵件接收者以外(甚至發(fā)送者)的任何人無法閱讀其中的內(nèi)容。使用安全電子郵件之前要先申請二個安全證書,用戶可以在證書頒發(fā)機構(gòu)(CA)處申請證書,也可以到其他使用標準證書格式的頒發(fā)機構(gòu)處申請。有的頒發(fā)機構(gòu)會提供短期有效的免費證書供用戶試用。若要經(jīng)常使用,則要申請一個長期有效的證書,此時用戶通常需要提交足夠的身份證明和交納一定的費用。用戶成功申請數(shù)字證書后,將會獲得一對公私密鑰。該密鑰對存儲于用戶本地 PC中。若要使用 AIMC 的安全郵件服務,用戶還需要將該密鑰對導入到 AIMC 中。AIMC 支持常用的 PKCS12 導入文件格式。導入的過程分兩步:用戶導出密鑰對,并保存為PKCS12 格式的文件:用戶將導出的密鑰對文件通過瀏覽器導入到 WebMail 中。電子郵件軟件使用用戶的私鑰加密郵件,并在郵件中添加簽名 PKCS7Signature,這個簽名包括了用戶的證書,它就會對郵件的簽名進行驗證。當郵件接收者使用的郵件工具支持 S/MIME,驗證簽名需要對證書鏈進行驗證,這需要已經(jīng)安裝頒發(fā)給你的S/MIME 證書的 CA 的證書,通常其它人不會有你的根證書,所以用戶必須首先將根證書發(fā)給別人并安裝,否則簽名郵件將無法驗證。根證書安裝方法同 SSL 根證書的安裝,通常 SSL 和 S/MIME 根證書會是同一個,因為 CA 一般是不分用途的,它只有一個用途就是簽發(fā)證書。當接收者收到用戶的簽名郵件后,通過查看郵件屬性可以看到用戶證書(包含在簽名中),他可以把用戶的證書添加到地址簿中去,并同地址簿中的郵件地址綁定。這樣接收者就可以給用戶發(fā)送加密郵件了,這是因為加密郵件使用的是郵件接收方的公鑰即數(shù)字證書。加密郵件的前提是在用戶的地址簿中有與發(fā)送地址綁定的數(shù)字證書。另外,利用數(shù)字簽名技術(shù)的郵件標準還有 PEM,PGP 等。人們還可以利用數(shù)字簽名的非否認特性保證電子數(shù)據(jù)交換(EDI)安全運行。而且數(shù)字簽名己經(jīng)成功的運用于電子資金轉(zhuǎn)賬(EFT)等。24 數(shù)字簽名在電子商務中的應用SET,安全電子交易,是 VISA 和 MasterCard 兩大信用卡公司和多家科技公司制定的一個在 Inter 上進行的在線