1. 程式人生 > >公鑰、私鑰、數字證書的概念

公鑰、私鑰、數字證書的概念

公鑰和私鑰

                                      

一直以來對公鑰和私鑰都理解得不是很透徹,感覺到模稜兩可。今天在網上找了半天,通過檢視對這個金鑰對的理解,總算弄清楚了。
      公鑰和私鑰就是俗稱的不對稱加密方式,是從以前的對稱加密(使用使用者名稱與密碼)方式的提高。用電子郵件的方式說明一下原理。
      使用公鑰與私鑰的目的就是實現安全的電子郵件,必須實現如下目的:
      1. 我傳送給你的內容必須加密,在郵件的傳輸過程中不能被別人看到。
      2. 必須保證是我傳送的郵件,不是別人冒充我的。
      要達到這樣的目標必須傳送郵件的兩人都有公鑰和私鑰。
      公鑰,就是給大家用的,你可以通過電子郵件釋出,可以通過網站讓別人下載,公鑰其實是用來加密/驗章用的。私鑰,就是自己的,必須非常小心儲存,最好加上 密碼,私鑰是用來解密/簽章,首先就Key的所有權來說,私鑰只有個人擁有。公鑰與私鑰的作用是:用公鑰加密的內容只能用私鑰解密,用私鑰加密的內容只能 用公鑰解密。
      比如說,我要給你傳送一個加密的郵件。首先,我必須擁有你的公鑰,你也必須擁有我的公鑰。
      首先,我用你的公鑰給這個郵件加密,這樣就保證這個郵件不被別人看到,而且保證這個郵件在傳送過程中沒有被修改。你收到郵件後,用你的私鑰就可以解密,就能看到內容。
      其次我用我的私鑰給這個郵件加密,傳送到你手裡後,你可以用我的公鑰解密。因為私鑰只有我手裡有,這樣就保證了這個郵件是我傳送的。
      當A->B資料時,A會使用B的公鑰加密,這樣才能確保只有B能解開,否則普羅大眾都能解開加密的訊息,就是去了資料的保密性。驗證方面則是使用籤 驗章的機制,A傳資料給大家時,會以自己的私鑰做簽章,如此所有收到訊息的人都可以用A的公鑰進行驗章,便可確認訊息是由 A 發出來的了。


  
數字證書的原理

   數字證書採用公鑰體制,即利用一對互相匹配的金鑰進行加密、解密。每個使用者自己設定一把特定的僅為本人所知的私有金鑰(私鑰),用它進行解密和簽名;同時 設定一把公共金鑰(公鑰)並由本人公開,為一組使用者所共享,用於加密和驗證簽名。當傳送一份保密檔案時,傳送方使用接收方的公鑰對資料加密,而接收方則使 用自己的私鑰解密,這樣資訊就可以安全無誤地到達目的地了。通過數字的手段保證加密過程是一個不可逆過程,即只有用私有金鑰才能解密. 在公開金鑰密碼體制中,常用的一種是RSA體制。
使用者也可以採用自己的私鑰對資訊加以處理,由於金鑰僅為本人所有,這樣就產生了別人無法生成的檔案,也就形成了數字簽名。採用數字簽名,能夠確認以下兩點:
(1)保證資訊是由簽名者自己簽名傳送的,簽名者不能否認或難以否認;
(2)保證資訊自簽發後到收到為止未曾作過任何修改,簽發的檔案是真實檔案。

我的解釋:

每個使用者都有一對私鑰和公鑰。
私鑰用來進行解密和簽名,是給自己用的。
公鑰由本人公開,用於加密和驗證簽名,是給別人用的。

當該使用者傳送檔案時,用私鑰簽名,別人用他給的公鑰解密,可以保證該資訊是由他傳送的。即數字簽名。
當該使用者接受檔案時,別人用他的公鑰加密,他用私鑰解密,可以保證該資訊只能由他接收到。可以避免被其他人看到。


數字證書

是 數字形式的標識,與護照或駕駛員執照十分相似。數字證書是數字憑據,它提供有關實體標識的資訊以及其他支援資訊。數字證書是由成為證書頒發機構(CA)的 權威機構頒發的。由於數字證書有證書權威機構頒發,因此由該權威機構擔保證書資訊的有效性。此外,數字證書只在特定的時間段內有效。

數字證書包含證書中所標識的實體的公鑰(就是說你的證書裡有你的公鑰),由於證書將公鑰與特定的個人匹配,並且該證書的真實性由頒發機構保證(就是說可以讓大家相信你的證書是真的),因此,數字證書為如何找到使用者的公鑰並知道它是否有效這一問題提供瞭解決方案。


我的解釋:

數字證書用來使使用者找到該授信機構的公鑰。