公鑰,私鑰和數字證書關係

主角介紹:Bob and Alice

提起RSA加密算法,公鑰和私鑰,多數文章都要使用Bob和Alice這兩位人物。他們的創造者名叫Rivest,是RSA之父。他爲了在避免在描述中使用A和B,就以這兩個字母開頭,創建一男一女兩個角色,就是我們在任何文章上都能看到的Alice和Bob了。這是一些題外話,下面就來進入我們的數字證書入門學習吧。

什麼是數字證書

NewImage

Bob有兩把鑰匙,一把叫公鑰(public key),一把叫私鑰(private key)。

NewImage

Bob的公鑰可以公開供其他人使用,他只保留自己的私鑰。公鑰和私鑰用來加解密數據,如果使用任意一把來加密數據,那麼只有使用另外一把才能解密數據。

NewImage

Susan想給Bob寫信,她可以使用Bob的公鑰將內容加密以後發送給Bob,Bob收到以後,使用私鑰解密以便閱讀內容。Bob的的其他同事即使截獲了Susan發送給Bob的信件,由於沒有Bob的私鑰,也無法解密,從而確保數據安全。以上就是使用公鑰和私鑰加解密的過程演示。

多說一句,如果Bob給Susan回信,如何保證數據安全呢?他可以使用Susan的公鑰加密消息後發給Susan,Susan使用自己的私鑰解密後閱讀。所以保護好自己的私鑰是多麼重要的事情啊。

現在Bob決定給Pat寫一份信,信件的內容不用加密,但是要保證Pat收到信件後,能夠確認信件的確是Bob發出的,而不是別人冒充Bob發給Pat的,應該如果做呢?

NewImage

 

Bob將信件通過hash軟件計算一下,得到一串消息摘要(有的文章也稱之爲“hash值”)。這一過程能夠保證2點:1、過程不可逆。即不能通過消息摘計算出信件的內容。2、消息摘要不會重複。即如果信件有任何改動,再次hash計算出的消息摘要一定不會和改動前的消息摘要一致。

NewImage

NewImage

然後,Bob使用自己的私鑰,將消息摘要加密。加密後的結果,我們稱之爲“數字簽名”。現在,Bob就可以將信件連同數字簽名一起發給Pat。

NewImage

Pat收到信件以後,會做2件事:1、使用Bob的公鑰將數字簽名解密,如果順利解密,說明的確是Bob簽發的數字簽名,不是別人簽發的,因爲Bob的私鑰沒有公開。2、Pat使用hash軟件對信件再次進行hash計算,和解密數字簽名得到的消息摘要對比,如果一致,說明信件沒有篡改,確實是Bob發出的。這就是數字簽名的過程。它能夠確保簽名人發出的消息不被篡改,也能證明的確是簽名人發出的消息。

ok,一切看上去是那麼的完美,使用公鑰私鑰,即能加解密消息,又可以數字簽名。說了那麼多,還沒有提到文章的主題----數字證書(不要和數字簽名搞混了)。

先來做一道CISP的試題:

那類人對單位的信息安全威脅最大:a、高層領導   b、信息主管  c、安全管理員  d、心懷不滿的員工

三長一短選最短,三短一長選最長,so答案就是d,也是我們下面引入的主角,Doug,our disgruntled employee。

Doug要欺騙Pat,冒充Bob給Pat寫信,他應該怎麼做的?既然Bob的公鑰是公開的,Doug可以冒充Bob,將他自己的公鑰發給Pat,讓Pat誤認爲收到的公鑰就是Bob的,然後就可以冒充Bob給Pat發消息了(這裏我們只談理論,不談具體實現方式)。所以問題的核心就是,如何確保公鑰不被冒充?

使用數字證書可以確保公鑰不被冒充。數字證書是經過權威機構(CA)認證的公鑰,通過查看數字證書,可以知道該證書是由那家權威機構簽發的,證書使用人的信息,使用人的公鑰。它有以下特點:

1、由專門的機構簽發的數字證書才安全有效。

2、簽發數字證書是收費的。

3、不會被冒充,安全可信。

4、數字證書有使用期限,過了使用期限,證書變爲不可用。CA也可以在試用期內,對證書進行作廢操作。

NewImage

5、CA的公鑰已經集成到操作系統中了。如上圖。

生成數字證書的流程的如下:

1、持有人將公鑰以及身份信息發送給權威機構。

2、權威機構負責對持有人的身份進行驗證,確保公鑰和持有人的信息準確無誤。

3、權威機構使用自己私鑰對持有人公鑰進行數字簽名,生成數字證書。

4、爲了確保證書不被篡改,權威機構對數字證書進行hash計算(指紋算法),生成摘要(指紋),使用自己的私鑰對摘要進行數字簽名,放到數字證書中。

5、對持有人收費。

 

參考:

http://www.ruanyifeng.com/blog/2011/08/what_is_a_digital_signature.html

http://blog.csdn.net/ly131420/article/details/38400583

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章