共找到2條詞條名為數字摘要的結果 展開
- 將長度消息變成短消息的方法
- 消息摘要
數字摘要
將長度消息變成短消息的方法
數字摘要是將任意長度的消息變成固定長度的短消息,它類似於一個自變數是消息的函數,也就是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),它有固定的長度,且不同的明文摘要成密文,其結果總是不同的,而同樣的明文其摘要必定一致。這樣這摘要便可成為驗證明文是否是“真身”的“指紋”了。
一般來說,非對稱加密是用來處理短消息的,而相對於較長的消息 則顯得有些吃力。當然,可以將長的消息分成若干小段,然後再分別簽名。不過,這樣做非常麻煩,而且會帶來數據完整性的問題。比較合理的做法是在數字簽名前對消息先進行數字摘要。
數字摘要
(1)被發送文件用SHA編碼加密產生128bit的數字摘要(見上節)。 (2)發送方用自己的私用密鑰對摘要再加密,這就形成了數字簽名。
(3)將原文和加密的摘要同時傳給對方。
(4)對方用發送方的公共密鑰對數字簽名解密,同時對收到的文件用SHA編碼加密產生又一摘要。
(5)將解密后的摘要和收到的文件在接收方重新加密產生的摘要相互對比。如兩者一致,則說明傳送過程中信息沒有被破壞或篡改過。否則不然。