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

相关推荐
凌波粒几秒前
LeetCode--90.子集II(回溯算法)
数据结构·算法·leetcode
旖-旎6 分钟前
《LeetCode 417 太平洋大西洋水流问题 FloodFill DFS 解法》
c++·算法·深度优先·力扣·floodfill
凌波粒9 分钟前
LeetCode--46.全排列(回溯算法)
数据结构·算法·leetcode
2zcode23 分钟前
项目文档:基于MATLAB语音信号变声算法设计与实现
算法·matlab·语音识别
SomeOtherTime27 分钟前
http协议处理播放video/mp4视频
http
指令集梦境29 分钟前
图解:单调栈算法模板(Java语言)
java·开发语言·算法
生成论实验室1 小时前
自动驾驶:一个自主运动的系统
人工智能·算法·机器学习·语言模型·机器人·自动驾驶·安全架构
sheeta19981 小时前
LeetCode 每日一题笔记 日期:2026.06.16 题目:3612. 字符串特殊符号处理
笔记·算法·leetcode
青山木1 小时前
Hot 100 --- 矩阵置零
线性代数·算法·leetcode·矩阵·哈希算法
Jasmine_llq1 小时前
《B4264 [GESP202503 四级] 二阶矩阵》
线性代数·算法·矩阵·二维矩阵遍历枚举所有2×2矩阵·交叉乘积等式条件判断·输入输出快读加速·长整型防溢出计数统计