您好,登錄后才能下訂單哦!
數字簽名是指發送方用自己的私鑰對數字指紋進行加密后所得的數據,其中包括非對稱密鑰加密和數字簽名兩個過程,在可以給數據加密的同時,也可用于接收方驗證發送方身份的合法性。采用數字簽名時,接收方需要使用發送方的公鑰才能解開數字簽名得到數字指紋。
數字指紋又稱為信息摘要,是指發送方通過HASH算法對明文信息計算后得出的數據。采用數字指紋時,發送方會將本端對明文進哈希運算后生成的數字指紋(還要經過數字簽名),以及采用對端公鑰對明文進行加密后生成的密文一起發送給接收方,接收方用同樣的HASH算法對明文計算生成的數據指紋,與收到的數字指紋進行匹配,如果一致,便可確定明文信息沒有被篡改。
數字簽名的加解密過程如圖1-20所示。甲也要事先獲得乙的公鑰,具體說明如下(對應圖中的數字序號):
圖1-20 數字簽名的加解密過程示意圖
(1)甲使用乙的公鑰對明文進行加密,生成密文信息。
(2)甲使用HASH算法對明文進行HASH運算,生成數字指紋。
(3)甲使用自己的私鑰對數字指紋進行加密,生成數字簽名。
(4)甲將密文信息和數字簽名一起發送給乙。
(5)乙使用甲的公鑰對數字簽名進行解密,得到數字指紋。
(6)乙接收到甲的加密信息后,使用自己的私鑰對密文信息進行解密,得到最初的明文。
(7)乙使用HASH算法對還原出的明文用與甲所使用的相同HASH算法進行HASH運算,生成數字指紋。然后乙將生成的數字指紋與從甲得到的數字指紋進行比較,如果一致,乙接受明文;如果不一致,乙丟棄明文。
從以上數字簽名的加/解密過程中可以看出,數字簽名技術不但證明了信息未被篡改,還證明了發送方的身份。數字簽名和數字信封技術也可以組合使用。但是,數字簽名技術也還有一個問題,獲取到對方的公鑰可能被篡改,并且無法發現。
試想一下,如果***者一開始就截獲了乙發給甲公鑰的文件,然后就可用貍貓換太子的方法更改乙的公鑰,最終可能導致甲獲得的是***者的公鑰,而非乙的。
具體過程是這樣的:***者攔截了乙發給甲的公鑰信息,用自己的私鑰對偽造的公鑰信息進行數字簽名,然后與使用甲的公鑰(***者也已獲知了甲對外公開的公鑰)進行加密的、偽造的乙的公鑰信息一起發給甲。甲收到加密信息后,利用自己的私鑰可以成功解密出得到的明文(偽造的乙的公鑰信息),因為這個信息的加密就是用甲的公鑰進行的,并且也可以通過再次進行HASH運算驗證該明文沒有被篡改。此時,甲則始終認為這個信息是乙發送的,即認為該偽造的公鑰信息就是乙的,結果甲再利用這個假的乙的公鑰進行加密的數據發給乙時,乙肯定是總解密不了的。此時,需要一種方法確保一個特定的公鑰屬于一個特定的擁有者,那就是數字證書技術了。因為用戶接收到其他用戶的公鑰數字證書時可以在證書頒發機構查詢、驗證的。
【經驗之談】許多人分不清非對稱密鑰加密和數字簽名的區別,其實很好理解。非對稱加密用的是接收方的公鑰進行數據加密的,密文到達對方后也是通過接收方自己的私鑰進行解密,還原成明文,整個數據加密和解密過程用的都是接收方的密鑰;而數字簽名則完全相反,是通過發送方的私鑰進行數據簽名的,經簽名的數據到達接收方后也是通過事先告知接收方的發送方的公鑰進行解密,整個數據簽名和解密的過程用的都是發送方的密鑰。
以上內容摘自剛剛上市的華為官方著作——《華為×××學習指南》,是國家十三五重點規劃圖書,是華為官方指定的ICT培訓教材!當當網、京東網等書店均可正式購買了!本書配套實戰視頻課程即將發布,敬請關注本人課程中心:http://edu.51cto.com/lecturer/user_id-55153.html
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。