《深入浅出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。

相关推荐
菜鸟555551 小时前
图论:Floyd算法
算法·图论
呼啦啦啦啦啦啦啦啦6 小时前
常见的排序算法
java·算法·排序算法
胡萝卜3.07 小时前
数据结构初阶:排序算法(一)插入排序、选择排序
数据结构·笔记·学习·算法·排序算法·学习方法
地平线开发者7 小时前
LLM 中 token 简介与 bert 实操解读
算法·自动驾驶
2501_915918417 小时前
iOS 应用上架全流程实践,从开发内测到正式发布的多工具组合方案
android·ios·小程序·https·uni-app·iphone·webview
scx201310047 小时前
20250814 最小生成树和重构树总结
c++·算法·最小生成树·重构树
阿巴~阿巴~7 小时前
冒泡排序算法
c语言·开发语言·算法·排序算法
散1128 小时前
01数据结构-交换排序
数据结构·算法
yzx9910138 小时前
Yolov模型的演变
人工智能·算法·yolo
weixin_307779139 小时前
VS Code配置MinGW64编译SQLite3库
开发语言·数据库·c++·vscode·算法