數字摘要是將任意長度的訊息變成固定長度的短訊息,它類似於一個自變數是訊息的函式,也就是Hash函式。數字摘要就是採用單向Hash函式將需要加密的明文“摘要”成一串固定長度(128位)的密文這一串密文又稱為數字指紋,它有固定的長度,而且不同的明文摘要成密文,其結果總是不同的,而同樣的明文其摘要必定一致。
一個Hash函式的好壞是由發生碰撞的機率決定的。如果攻擊者能夠輕易地構造出兩個訊息具有相同的Hash值,那么這樣的Hash函式是很危險的。一般來說,安全Hash標準的輸出長度為160位,這樣才能保證它足夠的安全。 這一加密方法亦稱安全Hash編碼法(SHA:Secure Hash Algorithm)或MD5(MD Standards for Message Digest),由Ron Rivest所設計。該編碼法採用單向Hash函式將需加密的明文“摘要”成一串128bit的密文,這一串密文亦稱為數字指紋(Finger Print),它有固定的長度,且不同的明文摘要成密文,其結果總是不同的,而同樣的明文其摘要必定一致。這樣這摘要便可成為驗證明文是否是“真身”的“指紋”了。
基本介紹
- 中文名:數字摘要
- 採用:Hash函式
- 非對稱加密:用來處理短訊息的
- 原理:將原文和加密的摘要同時傳給對方
數字簽名,基本原理,
數字簽名
一般來說,非對稱加密是用來處理短訊息的,而相對於較長的訊息則顯得有些吃力。當然,可以將長的訊息分成若干小段,然後再分別簽名。不過,這樣做非常麻煩,而且會帶來數據完整性的問題。比較合理的做法是在數字簽名前對訊息先進行數字摘要。
基本原理
(1) 被傳送檔案用SHA編碼加密產生128bit的數字摘要(見上節)。(2) 傳送方用自己的私用密鑰對摘要再加密,這就形成了數字簽名。
(3) 將原文和加密的摘要同時傳給對方。
(4) 對方用傳送方的公共密鑰對數字簽名解密,同時對收到的檔案用SHA編碼加密產生又一摘要。
(5) 將解密後的摘要和收到的檔案在接收方重新加密產生的摘要相互對比。如兩者一致,則說明傳送過程中信息沒有被破壞或篡改過。否則不然。