數字證書是一個經證書認證中心(CA)數字簽名的包含公開密鑰擁有者信息以及公開密鑰的數據文件。認證中心的數字簽名可以確保證書信息的真實性,用戶公鑰信息可以保證數字信息傳輸的完整性,用戶的數字簽名可以保證數字信息的不可否認性。
數字證書是各類終端實體和最終用戶在網上進行信息交流及商務活動的身份證明,在電子交易的各個環節,交易的各方都需驗證對方數字證書的有效性,從而解決相互間的信任問題。
認證中心(CA)作為權威的、可信賴的、公正的第三方機構,專門負責為各種認證需求提供數字證書服務。認證中心頒發的數字證書均遵循X.509 V3標準。X.509標準在編排公共密鑰密碼格式方面已被廣為接受。
數字證書的功能主要包括:身份驗證、信息傳輸安全、信息保密性(存儲與交易)、信息完整性、交易的不可否認性。
數字安全證書的工作流程
如果客戶A想和銀行B通信,他首先必須從數據庫中取得銀行B的證書,然后對它進行驗證。如果他們使用相同的CA(證書認證中心),事情就很簡單,客戶A 只需驗證銀行B證書上CA的簽名。如果他們使用不同的CA,問題就較為復雜。客戶A必須從CA的樹形結構底部開始,從底層CA往上層CA查詢,一直追蹤到 同一個CA為止,找出共同的信任CA。目前個人獲取網上銀行安全證書的途徑都是通過銀行申請,所以雙方肯定采用同一證書認證中心頒發的證書。
現在假設客戶A向銀行B傳送數字信息,為了保證信息傳送的真實性、完整性和不可否認性,需要對要傳送的信息進行數字加密和數字簽名,其傳送過程如下:
1)客戶A準備好要傳送的數字信息(明文)。
2)客戶A對數字信息進行哈希(hash)運算,得到一個信息摘要。
3)客戶A用自己的私鑰(SK)對信息摘要進行加密得到客戶A的數字簽名,并將其附在數字信息上。
4)客戶A隨機產生一個加密密鑰(DES密鑰),并用此密鑰對要發送的信息進行加密,形成密文。
5)客戶A用雙方共有的公鑰(PK)對剛才隨機產生的加密密鑰進行加密,將加密后的DES密鑰連同密文一起傳送給乙。
6)銀行B收到客戶A傳送過來的密文和加過密的DES密鑰,先用自己的私鑰(SK)對加密的DES密鑰進行解密,得到DES密鑰。
7)銀行B然后用DES密鑰對收到的密文進行解密,得到明文的數字信息,然后將DES密鑰拋棄(即DES密鑰作廢)。
8)銀行B用雙方共有的公鑰(PK)對客戶A的數字簽名進行解密,得到信息摘要。銀行B用相同的hash算法對收到的明文再進行一次hash運算,得到一個新的信息摘要。
9)銀行B將收到的信息摘要和新產生的信息摘要進行比較,如果一致,說明收到的信息沒有被修改過。
|
數字證書是網絡通訊中標志通訊各方身份信息的一系列數據,它提供了在互聯網上驗證通信各方身份的方法,它是權威機構-CA認證機構,又稱為證書授權(Certificate Authority)中心發行。 數字證書是經證書管理中心數字簽名的包含公開密鑰、擁有者信息以及公開密鑰的文件。證書的格式遵循ITUTX.509國際標準。X.509數字證書通常包含以下內容: 1.證書的版本信息。 2.證書的序列號,每個證書都有唯一的證書序列號。 3.證書所使用的簽名算法。 4.證書的發行機構名稱,命名規則一般采用X.500格式。 5.證書的有效期,通用的證書一般采用UTC時間格式,它的計時范圍為1950-2049。 6.證書所有人的名稱,命名規則一般采用X.500格式。 7.證書所有人的公開密鑰。 8.證書發行者對證書的簽名。 數字證書采用公鑰體制,即利用一對互相匹配的密鑰進行加密、解密。每個客戶可以設定特定的僅為本人所知的私有密鑰(私鑰),用它進行數據解密和簽名;同時設定一把公共密鑰(公鑰)并由本人公開,發送方使用接收方的公鑰對數據加密,而接收方則使用自己的私鑰解密,這樣信息就可以安全無誤地到達目的地了。 數字加密是一個不可逆過程,即只有使用私有密鑰才能解密。在公開密鑰密碼體制中,常用的是RSA體制。其數學原理是將一個大數分解成兩個質數的乘積,加密和解密用的是兩個不同的密鑰。即使已知明文、密文和加密密鑰(公開密鑰),在計算上想要推導出解密密鑰(私密密鑰)是不可能的。按現在的計算機技術水平,要破解目前采用的1024位RSA密鑰,需要上千年的計算時間。 公開密鑰體系解決了密鑰發布的管理問題,客戶可以公開公開密鑰,而保留私有密鑰。使用者可以使用接收方的公開密鑰對發送的信息進行加密,安全地傳送到對方,然后由接收方使用自己的私有密鑰進行解密。 客戶可以采用自己的私鑰對信息加以處理,由于密鑰僅為本人所有,這樣就產生了別人無法生成的文件,也就形成了數字簽名。采用數字簽名,能夠確認以下兩點: (1)保證信息是由簽名者自己簽名發送的,簽名者不能否認或難以否認。 (2)保證信息自簽發后到收到為止未曾做過任何修改,簽發的文件是真實文件。 數字簽名具體做法如下: 1)將報文按雙方約定的HASH算法計算得到一個固定位數的報文摘要。在數學上保證,只要改動報文中任何一位,重新計算出的報文摘要值就會與原先的值不相符。這樣就保證了報文的不可更改性。 2)將該報文摘要值發送者的私人密鑰加密,然后連同原報文一起發送給接收者,產生的報文稱數字簽名。 3)接收方收到數字簽名后,用同樣的HASH算法對報文計算摘要值,然后與用發送者公開密鑰進行解密解開的報文摘要值相比較,如果相等則說明報文確實來自所謂的發送者。 如果所有用戶都由同一CA為其簽署證書,則這一CA就必須取得所有用戶的信任。用戶證書除了能放在目錄中供他人訪問外,還可以由用戶直接把證書發給其他用戶。用戶B得到用戶A的證書后,可相信用戶A的公鑰加密的消息不會被他人獲悉,還相信用戶A的私鑰簽署的消息是不可全國偽造的。
非對稱加密最初可能是為了解決密匙保管與交換難題. 非對稱加密過程中用一個密匙加密只能用另一個密匙解密. 由此解決了密匙交換難題: 公匙隨意發放; 保管也大為簡化: 保護好私匙就可以了. PKI 之所以成為或 "稱為" 體系, 是包括了實施中所必需的公匙管理: 認證, 發放, 收回, 查詢等.
轉自:http://wpmsn.spaces.live.com/blog/cns!C0776A11EB428FDA!333.entry?wa=wsignin1.0&sa=683191712
|


