密码学 / 哈希算法
生活随笔
收集整理的這篇文章主要介紹了
密码学 / 哈希算法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、誕生原因
在日常生活中,每個人去銀行、坐火車都需要身份證證明自己的身份。身份證存在的目的就是要證明我真的是我。
同樣在網絡中,一個文件是否被改過(更改之后就是新的文件),需要一個“身份證”證明,這里就需要了 hash 算法了。
二、特點
為了滿足上述要求,需要 hash 算法滿足如下特點:
- 從哈希值不能反向推導出原始數據(所以哈希算法也叫單向哈希算法);
- 對輸入數據非常敏感,哪怕原始數據只修改了 1?Bit,最后得到的哈希值也大不相同;
- 散列沖突的概率要很小,對于不同的原始數據,哈希值相同的概率非常小;
- 哈希算法的執行效率要盡量高效,針對較長的文本,也能快速地計算出哈希值。
三、種類
1、MD5,即:Message-Digest Algorithm 5,已被拋棄。
2、SHA 系列,即:Secure Hash Algorithm 。
(1)SHA-1
(2)SHA-2,包括如下算法:
- SHA-224,SHA256 的閹割版。
- SHA-256
- SHA-384,SHA384?的閹割版。
- SHA-512
(3)SHA-3
四、區別
| 算法名稱 | 摘要長度 |
| MD5 | 128bit |
| SHA-1 | 160bit |
| SHA-224 | 224bit |
| SHA-256 | 256bit |
| SHA-384 | 384bit |
| SHA-512 | 512bit |
五、原理
原理復雜,有需要在學習吧。一般能明白該技術解決什么問題,怎么解決就能解決 80% 的問題了,二八原則嘛。
?
(SAW:Game Over!)
總結
以上是生活随笔為你收集整理的密码学 / 哈希算法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 编码方式 / Base 64
- 下一篇: 密码学 / 什么是数字签名