數字證書技術大全

一、認證與加密

認證(鑑權)就是指用戶必須提供他是誰的證明, 他是某個僱員, 某個組織的代理、某個軟件過程(如股票交易系統或Web訂貨系統的軟件過程)。認證的標準方法就是弄清楚他是誰,他具有什麼特徵, 他知道什麼可用於識別他的東西。比如說, 系統中存儲了他的指紋, 他接入網絡時, 就必須在連接到網絡的電子指紋機上提供他的指紋(這就防止他以假的指紋或其它電子信息欺騙系統), 只有指紋相符才允許他訪問系統。更普通的是通過視網膜血管分佈圖來識別, 原理與指紋識別相同, 聲波紋識別也是商業系統採用的一種識別方式。網絡通過用戶擁有什麼東西來識別的方法, 一般是用智能卡或其它特殊形式的標誌, 這類標誌可以從連接到計算機上的讀出器讀出來。至於說到“他知道什麼”, 最普通的就是口令, 口令具有共享祕密的屬性。例如, 要使服務器操作系統識別要入網的用戶, 那麼用戶必須把他的用戶名和口令送服務器。服務器就將它仍與數據庫裏的用戶名和口令進行比較, 如果相符, 就通過了認證, 可以上網訪問。這個口令就由服務器和用戶共享。更保密的認證可以是幾種方法組合而成。例如用ATM卡和PIN卡。在安全方面最薄弱的一環是規程分析儀的竊聽, 如果口令以明碼(未加密)傳輸, 接入到網上的規程分析儀就會在用戶輸入帳戶和口令時將它記錄下來, 任何人只要獲得這些信息就可以上網工作。

兩種加密方法



如果口令在不安全的信道內傳輸, 必須要對口令進行加密, 加密方法有兩種: 公共密鑰加密和專用密鑰加密。專用密鑰加密具有對稱性, 即加密密鑰也可以用作解密。最有名的專用密鑰加密系統就是數據加密標準(DES), 這個標準現在由美國國家安全局和國家標準與技術局來管理。另一個系統是國際數據加密算法(IDEA), 它比DES的加密性好, 而且需要的計算機功能也不麼強。IDEA加密標準由PGP(Pretty Good Privacy)系統使用。公共密鑰加密使用兩個不同的密鑰, 因此是一種不對稱的加密系統。它的一個密鑰是公開的, 而系統的基本功能也是有公共密鑰的人可以訪問的, 公共密鑰可以保存在系統目錄內或保存在未加密的電子郵件信息中。它的另一個密鑰是專用的, 它用來加密信息但公共密鑰可以解密該信息, 它也可以對公共密鑰加密的信息解密。在提供同等安全性的前提下, 專用密鑰加密的系統速度比較快。

由於專用密鑰由雙方共享, 所以沒有辦法確定哪一方始發信息, 這就爲合法的爭議留下了缺口。專用密鑰和公共密鑰的鑑權過程是相同的, 主要問題是密鑰分配。怎樣使密鑰保存在手邊或記在腦子裏(人、計算機、軟件模塊都會有密鑰, 我們將他們稱爲密鑰持有者), 在使用時不被竊聽者截獲? 用得最多的專用密鑰認證系統就是Kerberos, 它需要有一個保密性好的服務器來保存與所有密鑰持有者通信的主密鑰, 密鑰持有者想要進行認證或解密, 與其它密鑰持有者的會話, 就要發佈與他們祕密通信的密鑰, Kerberos只是部分實現了OSF的分佈式計算環境(DCE)規範。Kerberos也是Windows NT 5.0安全系統的一部分, 基於Kerberos的系統尚未被廣泛採用。公共密鑰加密沒有密鑰分配問題, 它可以放在目錄內, 電話黃頁(商業電話)上或公告牌裏。公共密鑰存在的問題是能否信任使用密鑰的密鑰持有者, 因爲任何人都可獲得公共密鑰。目前使用的第三個版本的ITU的X. 509標準定義了兼容 的數字證書模塊, 其主要模塊是密鑰持有者的名稱、密鑰持有者的公共密鑰信息和證書管理(CA)的數字簽名(數字簽名保證證書不被修改, 也不可姳環袢?)。X. 509 V3數字證書還包括證書發行人的名字, 發行人的唯一識別碼, 密鑰持有者的唯一識別碼和證書的序列號及有效期和證書的版本號和簽字算法等。使用Novell目錄服務、Lotus Notes和PGP的用戶使用數字證書, 但它們不使用X. 509標準。

實現公共密鑰基礎結構的障礙

證書管理是一個十分陳舊而且不直觀的機制, 它不僅發佈數字證書, 它還要建立維護證書取消清單(CRL)。如果你的專用密鑰丟失或被偷了, 或者你被解僱了, 或者你找到了新的工作不需要訪問現在的東西, 那麼必須有一種方法使你原來有效的證書失效。因此需要一個驗證數字證書有效性的過程, 它檢查證書管理者的公共密鑰對證書是否有效, 驗證證書是否被修改, 驗證證書是否過期, 檢驗證書是否被取消。信息安全方面的人士很關心CRL的可伸縮性, 如果有效期過長, CRL就不斷加長, 就需要更多的計算機資源來搜索它, 如果證書更新太快, 又給管理帶來麻煩。

證書管理的另一個問題是如何相互作用。例如公司X對證書管理,這經與公司Y相互證明, 公司Y也對證書管理。但是我是否願意信任某個想與我在Internet上做生意的證書管理(CA)呢? 或者說, 信任是否可以傳遞: 如果CAY信任CAZ, 而且CAX信任CAY, 那麼CAX是否能自動信任CAZ呢? 如果這樣做是合理的, 那麼我是否可以在與我信任的CA和我不知道的CA之間找到一個閉合的鏈路呢? 如果能得到這樣一個信任鏈, 那麼它們的擴展是否可以接受呢, 或者說將花掉過多的計算費用、引起時延? X. 509標準提供一個所謂的反向證書, 它包括其它CA經過認證的密鑰, 這種能力提供了靈活的交叉認證, 但它不能解決識別和實現信任鏈的體系結構問題。

證書和密鑰管理



證書有一定的生存期, 從發佈、分佈到取消, 它可以到其期, 再更新。當然, 任何CA的數據庫都必須進行有效地備份, 併爲任何的不測作好準備。應該爲CA制定政策(如果可能的話還應該公佈), 它要指明證書的有效期, 與密鑰持有人的密鑰對連接的證據, 以及防範正在僱用但不被信任的僱員應採取的步驟。CA系統應具備最起碼的性能, 還有很高的保密性。在一個可以互操作的公共密鑰體系結構中, 折衷的密鑰可能可破許多信任鏈並使特殊CA用戶的安全性消失。對專用密鑰的訪問就好象是用口令保護一樣, 處理被忘掉的口令的方法也值得認真考慮, 除了密鑰持有人外, 其它人員是不能使用專用密鑰進行訪問的。用於加密的密鑰也需要作備份, 否則密鑰丟失或改變, 用此密鑰加密的數據也會丟失(但是數字簽名的密鑰卻不能被工具所備份, 因爲如果有人丟失了用於數字簽名的專用密鑰, 還可以產生一個新的專用密鑰使它與原來的公共密鑰一起工作。)將密鑰交與第三方保存是與密鑰備份不同的另一個問題。一般來說, 有一個或多個第三方保存密鑰的工具或部分密鑰工具, 所有第三方鑰密持有人一起才能生成一個完整的工具。另一個較好的方法是週期更新密鑰, 就象當初生成公共/專用密鑰對一樣, 更新密鑰也要花費CPU的週期, 比較好的主意是錯開更新的日期。


二、CA認證系統知識點滴

什麼是CA?

¤CA是Certificate Authority的縮寫,通常翻譯成認證權威或者認證中心,主要用途是爲用戶發放數字證書。這個數字證書包含了用戶身份的部分信息及用戶所持有的公鑰,同時利用CA本身的私鑰爲數字證書加上數字簽名,其他用戶只要能驗證證書是真實的,並且信任頒發證書的認證中心,就可以確認用戶身份,完成認證工作。

¤CA中心爲每個使用公開密鑰的用戶發放一個數字證書,數字證書的作用是證明證書中列出的用戶名稱與證書中列出的公開密鑰相對應。CA中心的數字簽名使得攻擊者不能僞造和篡改數字證書。

爲什麼要使用CA?

¤爲了使PKI的業務能夠廣泛應用,一個基本而關鍵的問題是公鑰的分發與管理。由此引發出了某一公鑰究竟屬於誰的問題,它必須是由一個公衆都信賴的權威機構進行認證,否則整個業務體系都將出現致命的安全漏洞。目前國際上通用的解決辦法就是建立證書籤證機關(Certificate Authority,即CA),由CA對公鑰進行統一的管理並將公鑰以公鑰證書的形式對外分發。

CA的功能?

¤參考TongCA的功能

1、生成、撤銷、更新證書。

2、發行證書和黑名單到目錄服務器。

3、維護證書和黑名單數據庫。

4、生成和維護自己的密鑰:爲了安全起見,CA目前的密鑰(?)是CA自己生成的,並加密保存到具有超級用戶權限的目錄中。

5、維護審計日誌。

6、增加、刪除本級RA:由CA操作員來完成。

7、保證CA、RA和目錄服務器三者數據內容的一致性。

¤概括地說,認證中心(CA)的功能有:證書發放、證書更新、證書撤銷和證書驗證。CA的核心功能就是發放和管理數字證書,具體描述如下: 

(1)接收驗證最終用戶數字證書的申請。 

(2)確定是否接受最終用戶數字證書的申請-證書的審批。 

(3)向申請者頒發、拒絕頒發數字證書-證書的發放。 

(4)接收、處理最終用戶的數字證書更新請求-證書的更新。 

(5)接收最終用戶數字證書的查詢、撤銷。 

(6)產生和發佈證書廢止列表(CRL)。 

(7)數字證書的歸檔。 

(8)密鑰歸檔。 

(9)歷史數據歸檔。 

認證中心爲了實現其功能,主要由以下三部分組成: 

註冊服務器:通過 Web Server 建立的站點,可爲客戶提供每日24小時的服務。因此客戶可在自己方便的時候在網上提出證書申請和填寫相應的證書申請表,免去了排隊等候等煩惱。 

證書申請受理和審覈機構:負責證書的申請和審覈。它的主要功能是接受客戶證書申請並進行審覈。 

認證中心服務器:是數字證書生成、發放的運行實體,同時提供發放證書的管理、證書廢止列表(CRL)的生成和處理等服務。

目前CA認證系統都由哪幾部分組成?各部分都具有什麼功能?

¤目前CA認證系統主要由以下三部分組成:在客戶端面向證書用戶的數字證書申請、查詢和下載系統;在RA端由RA管理員對證書申請進行審批的證書授權系統;在CA控制檯,簽發用戶證書的證書籤發系統。

三、數字證書知識點滴

什麼是數字證書? 

¤是由證書籤證機關(CA)簽發的對用戶的公鑰的認證。因此,證書的內容應包括CA的信息、用戶信息、用戶公鑰及CA簽發時間及有效期等內容。目前國際上對證書的格式及認證方法遵從X.509體系標準。

¤數字證書實際上是一份電子文檔

¤數字證書是一段包含用戶身份信息、用戶公鑰信息以及身份驗證機構數字簽名的數據。身份驗證機構的數字簽名可以確保證書信息的真實性。證書格式及證書內容遵循X.509標準。

¤數字證書又稱爲數字標識(Digital Certificate,Digital ID)。它提供了一種在Internet上身份驗證的方式,是用來標誌和證明網絡通信雙方身份的數字信息文件,與司機駕照或日常生活中的身份證相似。在網上進行電子商務活動時,交易雙方需要使用數字證書來表明自己的身份,並使用數字證書來進行有關的交易操作。通俗地講,數字證書就是個人或單位在Internet的身份證。數字證書主要包括三方面的內容:證書所有者的信息、證書所有者的公開密鑰和證書頒發機構的簽名。 

證書裏包含了什麼?

¤一個標準的X.509數字證書包含以下一些內容: 

證書的版本信息; 

證書的序列號,每個證書都有一個唯一的證書序列號; 

證書所使用的簽名算法;  

證書的發行機構名稱,命名規則一般採用X.500格式;  

證書的有效期,現在通用的證書一般採用UTC時間格式,它的計時範圍爲1950-2049;  

證書所有人的名稱,命名規則一般採用X.500格式; 

證書所有人的公開密鑰;  

證書發行者對證書的簽名。

數字證書能解決什麼問題?

在使用數字證書的過程中應用公開密鑰加密技術,建立起一套嚴密的身份認證系統,它能夠保證: 

信息除發送方和接受方外不被其他人竊取;

信息在傳輸過程中不被篡改;

接收方能夠通過數字證書來確認發送方的身份;

發送方對於自己發送的信息不能抵賴。

以電子郵件爲例,數字證書主要可以解決:

保密性:通過使用發件人的數字證書對電子郵件加密,只有收件人才能閱讀加密的郵件,這樣保證在Internet上傳遞的電子郵件信息不會被他人竊取,即使發錯郵件,收件人由於無法解密而不能夠看到郵件內容。

完整性:利用發件人數字證書在傳送前對電子郵件進行數字簽名不僅可確定發件人身份,而且可以判斷髮送的信息在傳遞的過程中是否被篡改過。

身份認證:在Internet上傳遞電子郵件的雙方互相不能見面,所以必須有方法確定對方的身份。利用發件人數字證書在傳送前對電子郵件進行數字簽名即可確定發件人身份,而不是他人冒充的。

不可否認性:發件人的數字證書只有發件人唯一擁有,故發件人利用其數字證書在傳送前對電子郵件進行數字簽名後,發件人就無法否認發送過此電子郵件。

數字證書的原理是什麼? 

數字證書採用PKI(Public Key Infrastructure)公開密鑰基礎架構技術,利用一對互相匹配的密鑰進行加密和解密。每個用戶自己設定一把特定的僅爲本人所知的私有密鑰(私鑰),用它進行解密和簽名;同時設定一把公共密鑰(公鑰),由本人公開,爲一組用戶所共享,用於加密和驗證簽名。當發送一份保密文件時,發送方使用接收方的公鑰對數據加密,而接收方則使用自己的私鑰解密,通過數字的手段保證加解密過程是一個不可逆過程,即只有用私有密鑰才能解密,這樣保證信息安全無誤地到達目的地。用戶也可以採用自己的私鑰對發送信息加以處理,形成數字簽名。由於私鑰爲本人所獨有,這樣可以確定發送者的身份,防止發送者對發送信息的抵賴性。接收方通過驗證簽名還可以判斷信息是否被篡改過。在公開密鑰基礎架構技術中,最常用一種算法是RSA算法,其數學原理是將一個大數分解成兩個質數的乘積,加密和解密用的是兩個不同的密鑰。即使已知明文、密文和加密密鑰(公開密鑰),想要推導出解密密鑰(私密密鑰),在計算上是不可能的。按現在的計算機技術水平,要破解目前採用的1024位RSA密鑰,需要上千年的計算時間。

數字證書的應用

現有持證人甲向持證人乙傳送數字信息,爲了保證信息傳送的真實性、完整性和不可否認性,需要對要傳送的信息進行數字加密和數字簽名,其傳送過程如下: 

(1) 甲準備好要傳送的數字信息(明文)。 

(2) 甲對數字信息進行哈希(hash)運算,得到一個信息摘要。 

(3) 甲用自己的私鑰(SK)對信息摘要進行加密得到甲的數字簽名,並將其附在數字信息上。 

(4) 甲隨機產生一個加密密鑰(DES密鑰),並用此密鑰對要發送的信息進行加密,形成密文。 

(5) 甲用乙的公鑰(PK)對剛纔隨機產生的加密密鑰進行加密,將加密後的DES密鑰連同密文一起傳送給乙。 

(6) 乙收到甲傳送過來的密文和加過密的DES密鑰,先用自己的私鑰(SK)對加密的DES密鑰進行解密,得到DES密鑰。 

(7) 乙然後用DES密鑰對收到的密文進行解密,得到明文的數字信息,然後將DES密鑰拋棄(即DES密鑰作廢)。 

(8) 乙用甲的公鑰(PK)對甲的數字簽名進行解密,得到信息摘要。 

(9) 乙用相同的hash算法對收到的明文再進行一次hash運算,得到一個新的信息摘要。 

(10)乙將收到的信息摘要和新產生的信息摘要進行比較,如果一致,說明收到的信息沒有被修改過。 



在(5)處用到的PK,是否來自乙所持有的的數字證書?若是,從何處得到該數字證書?關於此過程的加密解密,是怎樣實現?

A 如何獲得通訊對方的公鑰並且相信此公鑰是由某個身份確定的人擁有的,這就要用到電子證書。電子證書是由大家共同信任的第三方---認證中心(Certificate Authority,CA)來頒發的,有某人的身份信息、公鑰和CA的數字簽名。任何一個信任CA的通訊一方,都可以通過驗證對方電子證書上的CA數字簽名來建立起和對方的信任,並且獲得對方的公鑰以備使用。



數字證書的使用

每一個用戶有一個各不相同的名字,一個可信的證書認證中心(CA)給每個用戶分配一個唯一的名字並簽發一個包含名字和用戶公開密鑰的證書。

如果甲想和乙通信,他首先必須從數據庫中取得乙的證書,然後對它進行驗證。如果他們使用相同的CA,事情就很簡單。甲只需驗證乙證書上CA的簽名;如果他們使用不同的CA,問題就複雜了。甲必須從CA的樹形結構底部開始,從底層CA往上層CA查詢,一直追蹤到同一個CA爲止,找出共同的信任CA。

證書可以存儲在網絡中的數據庫中。用戶可以利用網絡彼此交換證書。當證書撤銷後,它將從證書目錄中刪除,然而簽發此證書的CA仍保留此證書的副本,以備日後解決可能引起的糾紛。

如果用戶的密鑰或CA的密鑰被破壞,從而導致證書的撤銷。每一個CA必須保留一個已經撤銷但還沒有過期的證書廢止列表(CRL)。當甲收到一個新證書時,首先應該從證書廢止列表(CRL)中檢查證書是否已經被撤銷。

數字證書由誰來頒發,如何頒發? 

數字證書是由認證中心頒發的。 

認證中心是一家能向用戶簽發數字證書以確認用戶身份的管理機構。爲了防止數字憑證的僞造,認證中心的公共密鑰必須是可靠的,認證中心必須公佈其公共密鑰或由更高級別的認證中心提供一個電子憑證來證明其公共密鑰的有效性,後一種方法導致了多級別認證中心的出現。 

數字證書頒發過程如下:用戶首先產生自己的密鑰對,並將公共密鑰及部分個人身份信息傳送給認證中心。認證中心在覈實身份後,將執行一些必要的步驟,以確信請求確實由用戶發送而來,然後,認證中心將發給用戶一個數字證書,該證書內包含用戶的個人信息和他的公鑰信息,同時還附有認證中心的簽名信息。用戶就可以使用自己的數字證書進行相關的各種活動。


四、PKI/CA 技術的介紹


PKI 就是 Public Key Infrastructure 的縮寫,翻譯過來就是公開密鑰基礎設施。它是利用公開密鑰技術所構建的,解決網絡安全問題的,普遍適用的一種基礎設施。美國政府的一個報告中把 PKI 定義爲全面解決安全問題的基礎結構,從而大大擴展了 PKI 的概念。而我們認爲,採用了公開密鑰技術的基礎設施就可以稱爲 PKI 。公開密鑰技術也就是利用非對稱算法的技術。說 PKI 是基礎設施,就意味着它對信息網絡的重要。將 PKI 在網絡信息空間的地位與電力基礎設施在工業生活中的地位進行類比非常確切。電力系統,通過伸到用戶的標準插座爲用戶提供能源。 PKI 通過延伸到用戶本地的接口,爲各種應用提供安全的服務,如認證、身份識別、數字簽名、加密等。從概念上講,如果離開使用 PKI 的應用系統, PKI 本身沒有任何實際的用處,正如電力系統離開電器設備也沒有用一樣。有了 PKI ,安全應用程序的開發者不用再關心那些複雜的數學運算和模型,而直接按照標準使用一種插座(接口)。用戶也不用關心如何進行對方的身份鑑別而可以直接使用標準的插座,正如在電力基礎設施上使用電吹風一樣。 

PKI 中最基本的元素就是數字證書。所有安全的操作主要通過證書來實現。 PKI 的硬設備還包括籤置這些證書的證書機構 (CA) ,登記和批准證書籤置的登記機構 (RA) ,以及存儲和發佈這些證書的電子目錄。 PKI 中還包括證書策略,證書路徑以及證書的使用者。所有這些都是 PKI 的基本元素。許多這樣的基本元素有機地結合在一起就構成了 PKI 。 

PKI 到底是什麼,通過類比可以讓我們有更好的理解。 

首先看看產出。電力基礎設施提供能源, PKI 提供網絡安全服務。能源可以用於許多需要能源的設備,而安全服務可以爲其他需要安全的應用提供保障。 PKI 可以提供的安全服務包括保密、完整、真實和不可否認。服務原理也是一個基礎設施的重要特徵,電力系統通過輸送電子(電壓)提供電能, PKI 通過傳播數字證書保證安全。數字證書是一段數字,該數字說明了一個身份,是由 CA 通過數字簽名獲得的。任何人無法修改它,因爲任何人都不能假冒 CA 但卻可以驗證數字證書是否正確。數字證書是可以公開的。數字證書在分發過程中沒有被篡改的問題。這一點,在討論 PKI 的安全時必須清楚。正是由於數字證書的不可修改,才使得 PKI 的管理和維護變得簡單可行。 

通過其組成我們從另一個側面理解 PKI 。電力系統包括各種發電廠,連接電纜,併網控制設備,變電站,用電接口(如插座)等, PKI 包括 CA (證書機構), RA (登記機構),資料庫,客戶接口等。 CA 是簽發證書的場所, RA 是登記的場所,資料庫是管理證書的地方,客戶接口是提供服務的標準接口。 

系統結構也能表達一個基礎設施的特徵。一個發電機加兩根電線可能不是電力基礎結構,甚至連電力基礎結構中的部件都不是。同樣,一個 CA 和幾個用戶也不能算是 PKI 。一個不滿足一定規範的 CA 可能都不能稱爲 PKI 的部件。 PKI 的部件的重要特點就是能夠互操作。而互操作規範就是一種評判一個設備是否爲 PKI 部件的一個標準。 PKI 應該是由多個可以互操作的 CA 、 RA 、資料庫和衆多接口組成的大的系統。 

PKI 是目前唯一的能夠基本全面解決安全問題的可能的方案。 PKI 通過電子證書以及管理這些電子證書的一整套設施,維持網絡世界的秩序;通過提供一系列的安全服務,爲網絡電子商務、電子政務提供有力的安全保障。各國政府和許多民間機構都在紛紛研究和開發 PKI 產品,以望走在信息安全的前列。 PKI 同時是一個安全產品,可以成爲對網絡社會進行管理和維護的重要手段。誰擁有這項技術,誰就可能擁有對整個網絡的控制權。 PKI 中最重要的設備就是 CA 。 CA 不僅是發放證書的機構,同時它也可以擁有密鑰恢復能力。 

控制 CA 和 CA 技術就非常關鍵。從國家安全的角度來說,“統一領導、集中管理、定點研製、專控經營、滿足使用”就非常有意義。我們必須擁有自己的 CA 極其外圍軟件的自主的知識產權,擁有自己的,別人無法替代的位置。 

爲保證用戶之間在網上傳遞信息的安全性、真實性、可靠性、完整性和不可抵賴性,不僅需要對用戶的身份真實性進行驗證,也需要有一個具有權威性、公正性、唯一性的機構,負責向電子商務的各個主體頒發並管理符合國內、國際安全電子交易協議標準的電子商務安全證書 , CA 體系應醞而生。 

CA 機構,又稱爲證書授證 (Certificate Authority) 中心,是一個負責發放和管理數字證書的權威機構 , 它作爲電子商務交易中受信任的第三方,承擔公鑰體系中公鑰的合法性檢驗的責任。 CA 中心爲每個使用公開密鑰的用戶發放一個數字證書,以實現公鑰的分發並證明其合法性。數字證書是一個經證書授權中心數字簽名的包含公開密鑰擁有者信息以及公開密鑰的文件 , 作用是證明證書中列出的用戶合法擁有證書中列出的公開密鑰。 CA 機構的數字簽名使得攻擊者不能僞造和篡改證書。在 SET 交易中, CA 不僅對持卡人、商戶發放證書,還要對獲款的銀行、網關發放證書。它負責產生、分配並管理所有參與網上交易的個體所需的數字證書,因此是安全電子交易的核心環節。 

電子商務 CA 體系包括兩大部分,即符合 SET 標準的 SET CA 認證體系和其他基於 X.509 的 CA 認證體系。 

對於一個大型的應用環境,認證中心往往採用一種多層次的分級結構,各級的認證中心類似於各級行政機關,上級認證中心負責簽發和管理下級認證中心的證書,最下一級的認證中心直接面向最終用戶。 

認證中心主要有以下五種功能: 

•  證書的頒發 

中心接收、驗證用戶 ( 包括下級認證中心和最終用戶 ) 的數字證書的申請,將申請的內容進行備案,並根據申請的內容確定是否受理該數字證書申請。如果中心接受該數字證書申請,則進一步確定給用戶頒發何種類型的證書。新證書用認證中心的私鑰簽名以後,發送到目錄服務器供用戶下載和查詢。爲了保證消息的完整性,返回給用戶的所有應答信息都要使用認證中心的簽名。 

•  證書的更新 

認證中心可以定期更新所有用戶的證書,或者根據用戶的請求來更新用戶的證書。 

•  證書的查詢 

證書的查詢可以分爲兩類,其一是證書申請的查詢,認證中心根據用戶的查詢請求返回當前用戶證書申請的處理過程;其二是用戶證書的查詢,這類查詢由目錄服務器來完成,目錄服務器根據用戶的請求返回適當的證書。 

(4) 證書的作廢 

當用戶的私鑰由於泄密等原因造成用戶證書需要申請作廢時,用戶需要向認證中心提出證書作廢的請求,認證中心根據用戶的請求確定是否將該證書作廢。另外一種證書作廢的情況是證書已經過了有效期,認證中心自動將該證書作廢。認證中心通過維護證書作廢列表 (Certificate Revocation List,CRL) 來完成上述功能。 

•  證書的歸檔 

證書具有一定的有效期,證書過了有效期之後就將作廢,但是我們不能將作廢的證書簡單地丟棄,因爲有時我們可能需要驗證以前的某個交易過程中產生的數字簽名,這時我們就需要查詢作廢的證書。基於此類考慮,認證中心還應當具備管理作廢證書和作廢私鑰的功能。總的說來,基於認證中心的安全方案應該很好地解決網上用戶身份認證和信息安全傳輸問題。


五、數字證書應用全攻略——10個數字證書應用實例


數字證書主要應用於各種需要身份認證的場合,目前廣泛應用於網上銀行、網上交易等商務應用外,數字整數還可以應用於發送安全電子郵件、加密文件等方面,以下是10個數字證書最常用的應用實例,從中讀者可以更好地瞭解數字證書技術及其應用。

一、保證網上銀行的安全

只要你申請並使用了銀行提供的數字證書,即可保證網上銀行業務的安全,即使黑客竊取了你的帳戶密碼,因爲他沒有你的數字證書,所以也無法進入你的網上銀行帳戶。下面我們以建設銀行的網上銀行爲例,介紹數字證書的安裝與使用:

1、安裝根證書

首先到銀行營業廳辦理網上銀行申請手續;然後登錄到各地建設銀行網站,點擊網站“同意並立即下載根證書”,將彈出下載根證書的對話框,點“保存”,把root.crt保存到你的硬盤上;雙擊該文件,在彈出的窗口中單擊“安裝證書”,安裝根證書。

2、生成用戶證書

接下來要填寫你的賬戶信息,按照你存摺上的信息進行填寫,提交表單,按“確定”後出現操作成功提示,記住你的賬號和密碼;進入證書下載的頁面,點擊“下載”,在新畫面中(見圖5)選擇存放證書的介質爲“本機硬盤(高級加密強度))”,點擊“生成證書”按鈕,將詢問你是否請求一個新證書,接着詢問你“是否要添加新的證書”,信任該站點,點“是”;系統將自動安裝證書,最後出現“安裝成功”畫面。  

如圖1


3、使用數字證書

現在,你可以使用證書來確保網上銀行的安全了,建議你把證書保存在USB盤上,使用網上銀行時才插到電腦上,防止證書被盜。

重新進入建設銀行網站,選擇“證書客戶登錄”,選擇正確的證書號,輸入用戶號和密碼,即可登錄你的網上銀行帳戶,辦理轉賬、網上速匯通等業務。

二、通過證書防範你的網站被假冒

目前許多著名的電子商務網站,都使用數字證書來維護和證實信息安全。爲了防範黑客假冒你的網站,你可以到廣東省電子商務認證中心

(http://www.cnca.net/)申請一個服務器證書,然後在自己的網站上安裝服務器證書。安裝成功後,在你的網站醒目位置將顯示“VeriSign安全站點”簽章、並提示用戶點擊驗證此簽章。只要你一點擊此簽章,就會連接VeriSign全球數據庫驗證網站信息,然後顯示真實站點的域名信息、及該站點服務器證書的狀態,這樣別人即可知道你的網站使用了服務器證書,是個真實的安全網站,可以放心地在你的網站上進行交易或提交重要信息。

另外,如果你發現某個網站有以下兩樣標誌,則表明該網站激活了服務器證書,此時已建立了SSL連接,你在該網站上提交的信息將會全部加密傳輸,因此能確保你隱私信息的安全。

1、觀察網址

觀察要你提交個人信息頁面的網址前,是否帶有“https://”標誌(這裏的S代表安全網站);

2、網頁狀態欄是否有金色小鎖

觀察網頁的狀態欄中是否有一把金色小鎖,雙擊該鎖會彈出該站點的服務器證書,裏面包含了真實站點的域名及證書有效期。如果狀態欄中沒有金鎖、或者它是打開的,那麼表示你提交的信息將不會被加密。

三、發送安全郵件

數字證書最常見的應用就是發送安全郵件,即利用安全郵件數字證書對電子郵件簽名和加密,這樣即可保證發送的簽名郵件不會被篡改,外人又無法閱讀加密郵件的內容。現在我們以Outlook XP爲例,介紹安全發送郵件的方法:

1、郵件帳號與數字證書綁定

啓動Outlook XP,在主窗口點擊菜單“工具”/選項/安全,單擊“設置”按鈕,彈出“更改安全設置”畫面(見圖6),輸入安全設置名稱lacl,勾選默認安全設置,點擊“選擇”爲帳戶綁定一個數字證書,最後單擊“確定”退出。以後發送數字簽名郵件時,將使用該證書進行簽名。

如圖2


2、發送帶數字簽名的郵件

單擊“新建”進入寫郵件窗口,開始撰寫一封新郵件。填上發件人、收件人、標題,寫好信,點擊工具欄上的“選項”按鈕,在郵件選項中,點擊“安全設置”按鈕,在彈出的窗口中(見圖7),勾選“爲此郵件添加數字簽名”,最後按“發送”把它發送出去。

如圖3


當對方收到並打開該郵件時,將看到“數字簽名郵件”的提示信息,在郵件內容窗口的右邊,有個紅色的“數字簽名”圖標,點擊之可看到數字簽名信息,由此便可確認該郵件是你發出的、並且中途沒有被篡改過。

如圖4

3、發送加密郵件

你必須首先獲得對方的公鑰,然後才能給他發加密郵件。

(1)獲得對方公鑰的方法

你可以讓收件人先給你發送一份簽名郵件來獲取對方的公鑰,或者直接到電子商務安全認證中心的網站(例如http://www.cnca.net或者http://www.ca365.com/)上查詢並下載對方的公鑰。

(2)創建郵件併發送

加密郵件的發送方法,與以上發送簽名郵件的方法類似,不過當你點擊“安全設置”按鈕,在安全屬性窗口中,要勾選“加密郵件內容和附件”。

四、對付網上投假票

目前網上投票,一般採用限制投票IP地址的方法來對付作假,但是斷線後重新上網,你就會擁有一個新IP地址,因此只要你不斷上網和下網,即可重複投票。爲了杜絕此類造假,建議網上投票使用數字證書技術,要求每個投票者都安裝使用數字證書,在網上投票前要進行數字簽名,沒有簽名的投票一律視爲無效。由於每個人的數字簽名都是唯一的,即使他不斷上網、下網,每次投票的數字簽名都會相同的,因此無法再投假票。

五、使用代碼簽名證書,維護自己的軟件名譽

天威誠信(www.itrus.com.cn)提供了代碼簽名證書,你可以利用代碼簽名證書、給你的軟件簽名,防止別人篡改了你的軟件(例如在你的軟件中添加木馬或病毒),維護你的軟件名譽。

利用上文提到的微軟Authenticode工具包,其中有一個signcode.exe,可以專門給代碼簽名,能對32位的、後綴爲.exe(PE 文件)、.cab、.dll 、.vbd和 .ocx 的文件進行數字簽名,給自己的程序簽名方法:

運行signcode.exe出現一個嚮導,先選擇你要簽名的程序文件,然後出現簽名選項,選擇“自定義”(右圖8);當提示選擇使用的簽名證書時,按“從文件選擇”按鈕,文件類型選擇X.509,選擇你的簽名證書lacl.cer;按“下一步”,然後點“瀏覽”安裝私匙文件lacl.pvk;最後在提示你加入時間戳時,選擇“不加入時間戳”。

如圖5


完成簽名後,你可以右擊經過數字簽名的代碼文件,然後選擇“屬性”/數字簽名,查看其簽名和證書,即可得知該軟件是否爲你發佈的。

六、保護Office文檔安全

Office可以通過數字證書來確認來源的可靠,你可以利用數字證書對Office文件或宏進行數字簽名,從而確保它們都是你編寫的、沒有被他人或病毒篡改過。

1、用數字證書進行宏的簽名

宏測試完畢確認後,再對宏進行簽名。打開包含要簽名的宏方案的文件,在“工具/宏/Visual Basic編輯器/工程資源管理器”中,選擇要簽名的方案;再點擊“工具/數字簽名”命令即可。

如果要防止用戶因意外修改宏方案而導致簽名失效,請在簽發之前鎖定宏方案。您的數字簽名只能說明您保證該方案是安全的,並不能證明是您編寫了該方案。因此鎖定宏方案不能防止其他用戶利用另一個簽名替換您的數字簽名。

2、用數字證書對文檔簽名

打開要簽名的Word 文檔(Office XP),單擊菜單“工具/選項”,點擊打開“安全性”選項卡(見圖9),其中有個“數字簽名”按鈕,單擊之給該文件加上你的數字簽名,隨之會彈出一個窗口,要求添加你的數字證書,單擊“添加”按鈕,從你的數字證書中選擇一個進行添加;然後按“確定”返回,現在你的數字證書就加到該文檔中了。


如圖6

如圖7



以後別人打開該文檔,單擊“工具”/選項/安全性”菜單,在此處看到你的數字證書,就知道該文檔是你編寫的,因爲有你的數字簽名。

爲了防止別人修改你的文檔資料,你還應該在圖9所示的畫面中,給文檔添加一個修改權限密碼,即在“修改權限密碼”一欄,輸入密碼123,最後按“確定”退出保存。這樣以後再次打開該文檔時,就會要求你輸入這個修改權限密碼,假如你不知道密碼,就不能修改該文檔、只能以只讀形式打開之。


七、爲加密的NTFS分區製作“鑰匙”

如果你的硬盤上有NTFS分區、並且對該分區中的數據進行了加密,那麼應該及時備份密鑰,假如你沒有這樣做,以後一旦重新安裝系統,你就會無法訪問NTFS分區上的加密數據,備份密鑰的方法是:

在IE中點擊“工具/Internet選項”,進入“內容”選項卡,點擊“證書”按鈕,在打開的“證書”窗口中選中要導出的證書,單擊“導出”;按照嚮導的提示,一路按“下一步”;直至嚮導詢問你是否導出私鑰,選擇“導出私鑰”即可,其他的選項均保留默認設置,最後輸入該用戶的密碼和想要保存的路徑並確認,導出工作就完成了。

導出的證書是一個以PFX 爲後綴的文件。以後你重裝系統後,可以找到該PFX 文件,鼠標右擊之並選擇“安裝PFX”,系統將會彈出一個導入嚮導,按照提示導入備份密鑰,這樣即可打開之前加密的數據文件。

八、檢查Windows是否爲微軟原版

如果你想知道自己的Windows是否爲微軟原版,只要驗證其核心文件是否被替換過即可,那麼如何知道核心文件未被替換過呢?你可以使用工具來檢查這些文件的數字簽名,Windows XP/2000中有“文件簽名驗證”工具,Windows 9x則提供了“系統文件檢查器”,使用這些工具你可以知道系統文件的數字簽名狀態,假如它們都經過了數字簽名,則說明Windows未被篡改過、是微軟原版的,下面我們以WindowsXP/2000爲例,介紹驗證的方法。

單擊菜單“開始/運行”,鍵入“sigverif”打開“文件簽名驗證”窗口,然後點擊“開始”按鈕檢查每個系統文件的數字簽名,過一會兒將顯示一個畫面(見圖10),列出所有未經過數字簽名的文件,如果你發現列表中有winlogon.exe、licdll.dll這兩個文件,那麼你的Windows就被篡改過了,否則即爲微軟原版的。

如圖8 


九、不再彈出簽名驗證警告

Windows XP自帶的驅動程序都通過了微軟的WHQL數字簽名,當你安裝未經過微軟數字簽名的驅動程序時,就會顯示警告信息“沒有通過Windows徽標測試,無法驗證它同Windows XP的相容性”,如果要求不再彈出驅動程序簽名驗證警告,你可以這樣設置:

單擊“開始/設置/控制面板/系統”,打開“系統屬性”窗口,切換到“硬件”選項頁,點擊“驅動程序簽名”按鈕,彈出一個窗口(見圖11),選擇“忽略—安裝軟件,不用徵求我的同意”,在“系統管理員選項”下,選中“將這個操作作爲系統默認值應用”複選框,最後按“確定”退出。

如圖 9


十、屏蔽插件安裝窗口

衆所周知,用IE上網瀏覽時,經常會要求你安裝各種插件,例如3721、IE搜索伴侶、百度等。有些人需要安裝這些插件,假如你不想安裝它們,彈出的這些插件安裝窗口,就會讓你非常煩惱!其實使用Windows的證書機制,把插件的證書安裝到“非信任區域”,即可屏蔽這些插件的安裝窗口,下面我們以屏蔽Flash播放插件爲例,加以說明:

在彈出的Flash播放插件安裝窗口中,有個“其發行者爲:”,在它下面有個發行者名稱的鏈接(即“Macromedia”),點擊該發行者鏈接,會出現一個證書窗口,選擇“不信任的證書”的選項,把證書安裝到“非信任區域”,點擊確定,這樣以後就不會再彈出該插件安裝窗口了。


六、數字證書應用全攻略——認識數字證書

認識數字證書

一、什麼是數字證書? 

數字證書也叫數字標識 (Digital Certificate,Digital ID),是一種應用廣泛的信息安全技術,一般由權威公正的第三方機構即CA(Certificate Authority)中心簽發,主要用於網上安全交往的身份認證,通俗地講,數字證書就是個人或單位在網絡上的身份證。數字證書以密碼學爲基礎,採用數字簽名、數字信封、時間戳服務等技術,在Internet上建立安全有效的信任機制。

數字證書文件通常就是一個.cer文件,採用ITUT X.509國際標準格式,其內容包含證書所有者的信息、公開密鑰和證書頒發機構的簽名等信息。在IE中單擊菜單“工具/Internet選項”,選擇“內容”選項卡,點擊“證書”按鈕;然後在“個人”選項卡中,選定某個數字證書,單擊“查看/詳細信息”,即可看到數字證書的主要內容
(見圖10)。 



從圖中可以看出,數字證書主要包括以下內容:

證書的版本信息,圖中V3表示該證書是X.509 V3版本;

證書的序列號,每個證書都有一個唯一的證書序列號;

證書所使用的簽名算法; 

證書的發行機構名稱,命名規則一般採用X.500格式; 

證書的有效期,現在通用的證書一般採用UTC時間格式,它的計時範圍爲1950-2049; 

證書所有人的名稱,命名規則一般採用X.500格式; 

證書所有人的公開密鑰(即公鑰);

   證書發行者對證書的簽名等。

二、數字證書的類型

數字證書有代碼簽名證書、安全電子郵件證書、個人和單位身份證書以及服務器證書等幾種類型,分別應用於不同的場合。例如代碼簽名證書主要用於給程序簽名;安全電子郵件證書,用於給郵件數字簽名;而個人數字證書用途則很廣,可以用來給Office XP文檔、軟件代碼、XML文件、Email等文件數字簽名。

數字證書可以存放在計算機的硬盤、隨身軟盤、IC卡或CUP卡中。如果數字證書存放在硬盤上,就有可能被盜,所以建議你把它存放在IC卡或CUP卡中,這樣密鑰可以不出卡,安全級別最高。

三、數字認證原理

利用數字證書技術進行網上安全傳輸數據的基本原理是:首先傳輸雙方互相交換證書,驗證彼此的身份;然後,發送方利用證書中的公鑰和自己的私鑰,對要傳輸的數據進行加密和簽名,這樣即可保證只有合法的用戶才能解密數據,同時也保證了傳輸數據的真實性和不可否認性。

1、數據加密

數字證書技術利用一對互相匹配的密鑰進行加密、解密。當你申請證書的時候,會得到一把私鑰和一個數字證書(公鑰)。其中公鑰可以發給他人使用,而私鑰你應該保管好、不能泄露給其他人,否則別人將能用它以你的名義簽名。

當你向朋友發送一份保密文件時,需要使用對方的公鑰對數據加密,朋友收到文件後,則使用自己的私鑰解密,如果你沒有私鑰,就不能解密文件,從而保證數據的安全保密性。這種加密是不可逆的,即使你已知明文、密文和公鑰,也無法推導出私鑰。

2、數字簽名

另外,你也可以對文件進行數字簽名,即用你的私鑰對數據進行加密處理。由於私鑰僅爲你一個人擁有、別人是無法仿造的,因此經過你簽名的文件一定是你自己簽名發送的,而且它還未曾篡改過。你可以右擊某個文件,查看文件屬性,假如沒有有效的數字簽名,那麼你將無法得知該文件的來源,或者無法確保它在發行之後未被篡改過(可能由病毒篡改)。

七、數字證書應用全攻略——如何獲取數字證書


數字證書可以在網上向相關CA機構申請獲得,或者使用makecert之類的工具自己生成。你可以申請個人和單位數字證書、安全電子郵件證書、代碼簽名證書以及服務器證書,分別應用於不同的場合。

一、網上申請數字證書

你可以在網上向一些CA中心申請數字證書,目前網上有很多專門提供數字證書的CA中心,例如中國數字認證網(http://www.ca365.com)、廣東省電子商務認證中心(http://www.cnca.net/)、博大證書(http://ca.foxmail.com.cn/)、天威誠信(http://www.itrus.com.cn)等,一些CA中心還向你提供了免費的試用型數字證書,不過試用期結束後,如果你要繼續使用該數字證書,就需要花錢購買了,申請步驟如下:

打開http://www.cnca.net/網頁,點擊“個人數字證書”欄下的“立即試用”,彈出一個頁面,要求你安裝根證書(即CA證書鏈),單擊“安裝證書鏈”按鈕,系統將提示是否將證書添加到根證書存儲區,選擇“是”;然後進入“基本信息”表單,輸入你的個人資料,在CSP欄目中選擇“Microsoft Base Cryptagraphic Provider V1.0”,填寫補充信息,例如有效證件類型、證件號碼、出生日期等等,存儲介質選擇“本地”將證書保存在本機硬盤上;最後點擊“提交”按鈕進行申請。

如圖1


接下來,系統將發送一封申請成功的信件到你申請時所用的郵箱內,其中包括業務受理號、密碼以及數字證書下載的地址;點擊數字證書的下載地址鏈接,並填寫業務受理號和密碼並提交,即可安裝數字證書,當提示“證書成功下載並裝入應用程序中”,則表明數字證書安裝成功。

二、用makecert生成數字證書

首先下載微軟的Authenticode for Internet Explorer 5.0(下載地址http://www.microsoft.com/downloa ... amp;displaylang=en),該工具包中有個makecert.exe程序,你可以用它來製作自己的數字證書。這種方法生成的數字證書雖然不屬於受信任的證書,但完全能夠正常使用,操作步驟是:在命令提示行中,用CD命令進入makecert.exe所在目錄,然後輸入以下命令:

makecert -sv lacl.pvk -n "CN=lacl" -ss My  -b 01/01/2005 -e 01/01/2095 lacl.cer

命令中各參數的含義見附表。

如圖2


以上命令執行後,將彈出一個窗口,要求你設置私匙密碼,如果你不設密碼,點“無”按鈕即可。

於是在makecert.exe程序所在目錄下,就生成了數字證書文件lacl.cer和對應的私匙文件lacl.pvk。注意:私鑰文件爲你個人所有,不能泄露給其他人,否則別人可以使用它、已你的名義簽名。

八、數字證書應用全攻略——檢查電腦上中的數字證書


如果你要查看自己的電腦上有哪些數字證書,可以使用以下四種方法:

一、用MMC來查看

單擊“開始/運行”,輸入MMC打開“控制檯”,點擊菜單“文件→添加/刪除管理單元”,在彈出的對話框中點擊“添加”按鈕,然後在管理單元列表中雙擊“證書”,選中“我的用戶賬戶”,再點擊“完成”按鈕,回到“控制檯根節點”,窗口下面顯示就是當前用戶的所有證書。

如圖3 

二、用certmgr.msc查看

單擊“開始/運行”,輸入certmgr.msc,在打開的窗口中(見圖3),單擊“個人”下面的“證書”,可看到你的所有證書。



三、用Certmgr查看

上文提過的Authenticode for Internet Explorer 5.0工具包,裏面有個Certmgr.exe程序,可以查看你的電腦上有哪些數字證書。雙擊Certmgr.exe,就會彈出一個窗口,顯示你的數字證書列表。如果你單擊“導入”按鈕,選擇證書文件,可以安裝根證書。

四、在Internet選項中查看

運行Internet Explorer,單擊菜單“工具”/Internet選項,選擇“內容”選項卡,點擊“證書”按鈕,也可以查看本機上的數字證書。

在“證書”對話框中,點擊“個人”選項卡,即可看到你的個人數字證書列表;選定某個數字證書,單擊“查看”按鈕,可以看到該數字證書的詳細信息。

如圖4 


九、數字證書應用全攻略——數字證書的管理


一、刪除誤安裝的數字證書

如果你不小心將數字證書添加到了不信任區域了,可以這樣刪除:單擊“開始→運行”,輸入“certmgr.msc”,在打開的窗口中選擇“不信任的證書→證書”,找到該證書並右擊之,選擇“刪除”即可。

二、數字證書失效時處理技巧

根源證書是用來驗證其它證書(包括安全性證書在內)的應用程序。如果電腦上的根源證書失效了,或者“日期/時間”設置錯誤,都會造成數字證書失效。

假如是根源證書失效了,你可以登錄www.verisign.com/support/site/update.html,下載最新版本的根源證書;如果是“日期/時間”設置錯誤、引起數字證書失效,你可以雙擊任務欄右邊的時間,設置正確的日期和時間。

三、備份數字證書

如圖5 


按照以上查看證書的方法,打開證書窗口,選中要進行備份的數字證書,點擊“導出”按鈕,按照嚮導的提示,一路按“下一步”(見圖4)進行備份。注意如果你是爲了備份而導出的,就要導出私鑰,否則就不要這樣做。

四、恢復數字證書

按照以上查看證書的方法,打開證書窗口,選中要導入證書的邏輯存儲區域(比如“個人”),單擊“導入”按鈕,打開“證書導入嚮導”,按照提示即可完成證書導入。如果導入的是具有保護密碼的證書,則還需要輸入相應的密碼。


轉自:http://blog.csdn.net/zhouyuqwert/article/details/5977578

發佈了25 篇原創文章 · 獲贊 5 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章