哈希生成器
从任意文本计算 MD5、SHA-1、SHA-256、SHA-384、SHA-512 和 CRC32 哈希值,所有算法均在浏览器本地运行。
生成哈希
输入文本,一次算出全部算法结果
哈希结果
-
-
-
-
-
-
关于这些哈希算法
每种算法适用什么场景 - 以及要避开什么
MD5 MD5
1992 年发布的 128 位摘要。速度快、支持广泛,但自 2004 年起已被碰撞攻破。适合去重、缓存键等非安全校验场景;绝不能用于签名或证书。
SHA-1 SHA-1
160 位摘要。2017 年被正式碰撞攻破 - 浏览器已不再信任 SHA-1 证书。仅用于遗留系统校验;新场景请选择 SHA-256 及以上。
SHA-2 SHA-256 / 384 / 512
SHA-2 家族,本工具通过浏览器原生 WebCrypto API 计算。是 TLS、代码签名、Git 提交和文件完整性校验的现行标准。涉及安全的场景一律优先 SHA-256 及以上。
CRC CRC32
32 位循环冗余校验,不是加密哈希。能检测 ZIP 条目和以太网帧的意外损坏,但极易构造碰撞。只用于快速变更检测,不可用于安全场景。
安全提示
-
MD5 和 SHA-1 已不适合安全用途 - 签名和完整性校验请使用 SHA-256 及以上。
-
切勿用普通哈希直接存储密码。请使用 Argon2、bcrypt 或 scrypt 等专用密码哈希算法。
-
哈希是单向的:相同输入永远得到相同摘要,但摘要无法还原回输入。
常见问题
什么是哈希函数?
哈希函数把任意输入文本转换为固定长度的摘要。相同输入永远得到相同摘要,哪怕改动一个字符结果也会完全不同。哈希广泛用于完整性校验、去重、签名和数字指纹。
为什么 MD5 和 SHA-1 带有安全警告?
研究者已经对两者给出了可行的碰撞攻击:不同的输入产生相同的摘要。这破坏了它们的核心安全承诺,因此不能用于签名、证书或防篡改场景。但在非对抗性的校验和场景中仍然可用。
哈希能被反推出原文吗?
不能。哈希在数学上是单向的。攻击者只能借助预计算表(彩虹表)或对可能输入进行暴力猜测 - 这也是哈希保护机密时必须使用唯一盐值的原因。
应该选哪种算法?
涉及安全一律用 SHA-256 及以上。快速变更检测或缓存键用 MD5 或 CRC32 即可。存储密码请使用 Argon2、bcrypt 或 scrypt 等专用密码哈希 - 绝不要用快速通用哈希。