數字簽名工做原理

  數字簽名是指發送方用本身的私鑰對數字指紋進行加密後所得的數據,其中包括非對稱密鑰加密和數字簽名兩個過程,在能夠給數據加密的同時,也可用於接收方驗證發送方身份的合法性。採用數字簽名時,接收方須要使用發送方的公鑰才能解開數字簽名獲得數字指紋。html

  數字指紋又稱爲信息摘要,是指發送方經過HASH算法對明文信息計算後得出的數據。採用數字指紋時,發送方會將本端對明文進哈希運算後生成的數字指紋(還要通過數字簽名),以及採用對端公鑰對明文進行加密後生成的密文一塊兒發送給接收方,接收方用一樣的HASH算法對明文計算生成的數據指紋,與收到的數字指紋進行匹配,若是一致,即可肯定明文信息沒有被篡改。算法

  數字簽名的加解密過程如圖1-20所示。甲也要事先得到乙的公鑰,具體說明以下(對應圖中的數字序號):ide

wKiom1nIUISQOnRbAACEtIdihQY275.png-wh_50

1-20  數字簽名的加解密過程示意圖
學習

1)甲使用乙的公鑰對明文進行加密,生成密文信息。加密

2)甲使用HASH算法對明文進行HASH運算,生成數字指紋。spa

3)甲使用本身的私鑰對數字指紋進行加密,生成數字簽名。視頻

4)甲將密文信息和數字簽名一塊兒發送給乙。htm

5)乙使用甲的公鑰對數字簽名進行解密,獲得數字指紋。blog

6)乙接收到甲的加密信息後,使用本身的私鑰對密文信息進行解密,獲得最初的明文。get

7)乙使用HASH算法對還原出的明文用與甲所使用的相同HASH算法進行HASH運算,生成數字指紋。而後乙將生成的數字指紋與從甲獲得的數字指紋進行比較,若是一致,乙接受明文;若是不一致,乙丟棄明文。

  從以上數字簽名的加/解密過程當中能夠看出,數字簽名技術不但證實了信息未被篡改,還證實了發送方的身份。數字簽名和數字信封技術也能夠組合使用。可是,數字簽名技術也還有一個問題,獲取到對方的公鑰可能被篡改,而且沒法發現。

試想一下,若是***者一開始就截獲了乙發給甲公鑰的文件,而後就可用狸貓換太子的方法更改乙的公鑰,最終可能致使甲得到的是***者的公鑰,而非乙的。

  具體過程是這樣的:***者攔截了乙發給甲的公鑰信息,用本身的私鑰對僞造的公鑰信息進行數字簽名,而後與使用甲的公鑰(***者也已獲知了甲對外公開的公鑰)進行加密的、僞造的乙的公鑰信息一塊兒發給甲。甲收到加密信息後,利用本身的私鑰能夠成功解密出獲得的明文(僞造的乙的公鑰信息),由於這個信息的加密就是用甲的公鑰進行的,而且也能夠經過再次進行HASH運算驗證該明文沒有被篡改。此時,甲則始終認爲這個信息是乙發送的,即認爲該僞造的公鑰信息就是乙的,結果甲再利用這個假的乙的公鑰進行加密的數據發給乙時,乙確定是總解密不了的。此時,須要一種方法確保一個特定的公鑰屬於一個特定的擁有者,那就是數字證書技術了。由於用戶接收到其餘用戶的公鑰數字證書時能夠在證書頒發機構查詢、驗證的。

   【經驗之談】許多人分不清非對稱密鑰加密和數字簽名的區別,其實很好理解。非對稱加密用的是接收方的公鑰進行數據加密的,密文到達對方後也是經過接收方本身的私鑰進行解密,還原成明文,整個數據加密和解密過程用的都是接收方的密鑰;而數字簽名則徹底相反,是經過發送方的私鑰進行數據簽名的,經簽名的數據到達接收方後也是經過事先告知接收方的發送方的公鑰進行解密,整個數據簽名和解密的過程用的都是發送方的密鑰。


以上內容摘自剛剛上市的華爲官方著做——《華爲×××學習指南》,是國家十三五重點規劃圖書,是華爲官方指定的ICT培訓教材!噹噹網、京東網等書店都可正式購買了!本書配套實戰視頻課程即將發佈,敬請關注本人課程中心http://edu.51cto.com/lecturer/user_id-55153.html

wKiom1nIUV_grGRPAAdq534eN3U888.jpg-wh_50

相關文章
相關標籤/搜索