《深入浅出HTTPS》读书笔记(8):密码学Hash算法的分类

密码学Hash算法有很多,比如MD5算法、SHA族类算法,MD5早已被证明是不安全的Hash算法了,目前使用最广泛的Hash算法是SHA族类算法。

1)MD5

MD5是一种比较常用的Hash算法,摘要值长度固定是128比特。

MD5算法目前被证明已经不安全了,MD5算法违反了强抗碰撞性原则,但是还没有破坏单一性原则。

理论上经过280次运算就能产生碰撞,但目前最快只要经过263次运算就能破坏强抗碰撞性。

2)SHA

SHA算法不是一个算法,而是一组算法,主要分为三类算法。

1)SHA-1

SHA-1算法类似于MD5算法,输出的长度固定是160比特。

目前SHA-1算法在严谨的加密学中已经被证明是不安全的,在实际应用过程中使用SHA-1算法并不代表就不安全。

在Git中,所有存储的文件都会通过SHA-1算法计算出一个摘要值。Git中使用SHA-1是为了保证数据的完整性而非机密性。

2)SHA-2

SHA-2算法是目前建议使用的Hash算法,截至目前是安全的,主要有四种算法,分别是SHA-256、SHA-512、SHA-224、SHA-384

3)SHA-3

是一种在设计上和SHA-2完全不同的算法,主要有四种算法,分别是SHA3-256、SHA3-512、SHA3-224、SHA3-384。

相关推荐
xybm16052 分钟前
MTSET可溶于DMSO、DMF、THF等有机溶剂,并在水中有轻微的溶解性,91774-25-3
java·spring·eclipse·tomcat·1024程序员节
AnFany8 分钟前
LeetCode【0016】最接近的三数之和
python·算法·leetcode·双指针·分治法
dream_ready10 分钟前
四万字长文SpringBoot、Spring、SpringMVC等相关面试题(注:该篇博客将会持续维护 最新维护时间:2024年11月12日)
java·spring boot·后端·spring·面试·1024程序员节
_OLi_16 分钟前
力扣 LeetCode 27. 移除元素(Day1:数组)
算法·leetcode·职场和发展
李歘歘28 分钟前
深度学习——前向传播与反向传播、神经网络(前馈神经网络与反馈神经网络)、常见算法概要汇总
深度学习·神经网络·算法
想七想八不如1140831 分钟前
【数据分析与数据挖掘】决策树算法
算法·数据挖掘·数据分析
დ旧言~1 小时前
【网络】子网掩码
服务器·网络·网络协议·tcp/ip·php·apache
paixiaoxin1 小时前
学术界的秘密武器:Zotero7大插件推荐
论文阅读·经验分享·笔记·云计算·学习方法·zotero·1024程序员节
V+zmm101342 小时前
校园服务平台小程序ssm+论文源码调试讲解
java·小程序·毕业设计·mvc·课程设计·1024程序员节
菜鸟得菜2 小时前
动态规划---解决多段图问题
算法·动态规划