02 散列算法

散列算法

1 簡介

它的典型應用是對一段信息產生信息摘要。

2 常見算法

2.1 MD5算法

MD5用的是哈希函數,它的典型應用是對一段信息產生信息摘要,以防止被篡改。嚴格來說,MD5不是一種加密算法而是摘要算法。無論是多長的輸入,MD5都會輸出長度爲128bits的一個串 (通常用 16 進制 表示爲 32 個字符)。

2.2 SHA1算法

SHA1 是和 MD5 一樣流行的消息摘要算法,然而 SHA1 比 MD5 的安全性更強。對於長度小於 2^64 位的消息,SHA1 會產生一個 160 位的消息摘要。基於MD5、SHA1 的信息摘要特性以及不可逆 (一般而言),可以被應用在檢查文件完整性以及數字簽名等場景

2.3 HMAC算法

HMAC密鑰相關的哈希運算消息認證碼(Hash-based Message Authentication Code)HMAC 運算利用哈希算法 (MD5、SHA1 等),以一個密鑰和一個消息爲輸入,生成一個消息摘要作爲輸出。

HMAC 發送方和接收方都使用 key 進行計算,而沒有這把 key 的第三方,則是無法計算出正確的散列值的,這樣就可以防止數據被篡改。

3 總結

待續…

發佈了30 篇原創文章 · 獲贊 4 · 訪問量 4433
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章