|
|
|
@ -223,12 +223,14 @@ $$
|
|
|
|
|
|
|
|
|
|
在实际中,我们通常会用一些标准哈希算法,例如 MD5、SHA-1、SHA-2、SHA3 等。它们可以将任意长度的输入数据映射到恒定长度的哈希值。
|
|
|
|
|
|
|
|
|
|
近一个世纪以来,哈希算法处在不断升级与优化的过程中。一部分研究人员努力提升哈希算法的性能,另一部分研究人员和黑客则致力于寻找哈希算法的安全性问题。
|
|
|
|
|
近一个世纪以来,哈希算法处在不断升级与优化的过程中。一部分研究人员努力提升哈希算法的性能,另一部分研究人员和黑客则致力于寻找哈希算法的安全性问题。下表展示了在实际应用中常见的哈希算法。
|
|
|
|
|
|
|
|
|
|
- MD5 和 SHA-1 已多次被成功攻击,因此它们被各类安全应用弃用。
|
|
|
|
|
- SHA-2 系列中的 SHA-256 是最安全的哈希算法之一,仍未出现成功的攻击案例,因此常被用在各类安全应用与协议中。
|
|
|
|
|
- SHA-3 相较 SHA-2 的实现开销更低、计算效率更高,但目前使用覆盖度不如 SHA-2 系列。
|
|
|
|
|
|
|
|
|
|
<p align="center"> 表 <id> 常见的哈希算法 </p>
|
|
|
|
|
|
|
|
|
|
| | MD5 | SHA-1 | SHA-2 | SHA-3 |
|
|
|
|
|
| -------- | ------------------------------ | ---------------- | ---------------------------- | -------------------- |
|
|
|
|
|
| 推出时间 | 1992 | 1995 | 2002 | 2008 |
|
|
|
|
|