一键五种算法
同时生成 MD5、SHA-1、SHA-256、SHA-384 和 SHA-512 哈希,方便比较或选择系统所需的算法。
从任何文本生成 MD5、SHA-1、SHA-256、SHA-384 和 SHA-512 哈希。使用原生 Web Crypto API。100% 客户端运行,无需上传,无跟踪。
一键生成 MD5、SHA-1、SHA-256、SHA-384 和 SHA-512——就在您的浏览器中。无需上传,无需注册,无限制。
在输入框中输入或粘贴要哈希的文本。工具支持 UTF-8,因此国际字符和表情符号可正确工作。
点击“计算哈希”一次生成所有五种哈希(MD5、SHA-1、SHA-256、SHA-384、SHA-512)。
使用每个哈希旁边的复制按钮将其复制到剪贴板。切换大写/小写开关以匹配您系统期望的格式。
一键五种算法,由原生 Web Crypto API 驱动。
同时生成 MD5、SHA-1、SHA-256、SHA-384 和 SHA-512 哈希,方便比较或选择系统所需的算法。
SHA 哈希使用浏览器内置的 `crypto.subtle.digest` 计算,由浏览器供应商审计并硬件加速。
一键切换小写和大写十六进制输出,以匹配您工具链期望的格式。
正确哈希包含国际字符、表情符号和其他非 ASCII 字符的文本。
所有哈希在浏览器中完成。您的输入文本永远不会被上传、存储或记录。
无需注册、无需 API 密钥、无每日配额。对个人和商业用途永久免费。
加密哈希函数是一种数学算法,接受任意大小的输入并产生固定大小的输出,称为哈希(或摘要)。相同输入始终产生相同哈希,但即使对输入做微小改变也会产生完全不同的哈希。例如,'hello' 的 SHA-256 哈希是 '2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824',而 'Hello'(大写 H)的 SHA-256 哈希是 '185f8db32271fe25f561a6fc938b2e264306ec304eda518007d1764826381969'。
好的加密哈希函数有四个关键特性:(1) 确定性——相同输入始终产生相同哈希。(2) 快速——计算哈希很快。(3) 雪崩效应——输入的微小变化产生完全不同的哈希。(4) 抗碰撞——找到两个产生相同哈希的不同输入在计算上不可行。SHA-256 和 SHA-512 满足所有四个特性;MD5 和 SHA-1 不满足(它们不抗碰撞)。
MD5 在 2008 年被破解,研究人员演示了实际碰撞攻击——他们创建了两个具有相同 MD5 哈希的不同可执行文件。SHA-1 在 2017 年被破解,Google 和 CWI Amsterdam 宣布了 SHAttered 攻击,产生了两个具有相同 SHA-1 哈希的不同 PDF 文件。两种算法都应被视为加密已破解,不应用于任何安全敏感目的。
但是,MD5 和 SHA-1 仍在遗留系统中用于校验和验证(攻击者没有创建碰撞的动机)。Git 使用 SHA-1 进行内容寻址,尽管正在过渡到 SHA-256。我们的工具包含 MD5 和 SHA-1 用于这些遗留用例,但我们明确推荐 SHA-256 或 SHA-512 用于任何新应用。
哈希是单向的:无法从哈希恢复输入。用于完整性检查和密码存储。加密是带密钥的双向:可以将密文解密回原始内容。用于机密性。编码(如 Base64)是不带密钥的双向:任何人都可以解码。用于数据兼容性,而非安全。
哈希生成器不可或缺的真实场景。
通过将文件或消息的哈希与已知良好值进行比较来验证其是否被篡改。
生成 SHA-1 或 SHA-256 哈希来唯一标识内容,类似于 Git 存储对象的方式。
一些较旧的 API 和协议仍需要 MD5 或 SHA-1 哈希;此工具无需安装额外软件即可提供。
在学习密码学或调试哈希不匹配时,快速检查已知输入的哈希。
热门哈希生成工具的并排对比。
| 功能 | NovaTools | EMOCode | 浏览器控制台 |
|---|---|---|---|
| 隐私(无上传) | 100% 本地 | 上传到服务器 | 本地 |
| MD5 + SHA 系列 | 全部 5 种 | 仅 SHA(无 MD5) | |
| 原生 Web Crypto API | 未知 | ||
| 大写切换 | 手动 | ||
| UTF-8 支持 | 手动 | ||
| 移动端友好 | 有限 | ||
| 离线可用 | 页面加载后 |
大多数在线哈希生成器将您的文本上传到服务器。我们的工具使用浏览器原生 Web Crypto API——您的输入永远不会离开设备。
常见哈希算法的关键信息。
| 符号 / 代码 | 说明 | 示例 |
|---|---|---|
MD5 | 128 位输出。已破解——请勿用于安全。仅限遗留校验和。 | d41d8cd98f00b204e9800998ecf8427e |
SHA-1 | 160 位输出。2017 年起已破解。被 Git 使用(正过渡到 SHA-256)。 | da39a3ee5e6b4b0d3255bfef95601890afd80709 |
SHA-256 | 256 位输出。安全。推荐用于新应用。 | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 |
SHA-384 | 384 位输出。安全。需要 384 位输出时使用。 | 38b060a751...fbd51ad2f1... (96 字符) |
SHA-512 | 512 位输出。安全。在 64 位 CPU 上比 SHA-256 更快。 | cf83e1357eef...7da3e (128 字符) |
MD5128 位输出。已破解——请勿用于安全。仅限遗留校验和。
d41d8cd98f00b204e9800998ecf8427eSHA-1160 位输出。2017 年起已破解。被 Git 使用(正过渡到 SHA-256)。
da39a3ee5e6b4b0d3255bfef95601890afd80709SHA-256256 位输出。安全。推荐用于新应用。
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855SHA-384384 位输出。安全。需要 384 位输出时使用。
38b060a751...fbd51ad2f1... (96 字符)SHA-512512 位输出。安全。在 64 位 CPU 上比 SHA-256 更快。
cf83e1357eef...7da3e (128 字符)| 符号 / 代码 | 说明 | 示例 |
|---|---|---|
MD5 | 16 字节 → 32 个十六进制字符。 | 098f6bcd4621d373cade4e832627b4f6 |
SHA-1 | 20 字节 → 40 个十六进制字符。 | a94a8fe5ccb19ba61c4c0873d391e987982fbbd3 |
SHA-256 | 32 字节 → 64 个十六进制字符。 | 9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08 |
SHA-512 | 64 字节 → 128 个十六进制字符。 | ee26b0dd4af7...28a8ff (128 字符, test 的哈希) |
MD516 字节 → 32 个十六进制字符。
098f6bcd4621d373cade4e832627b4f6SHA-120 字节 → 40 个十六进制字符。
a94a8fe5ccb19ba61c4c0873d391e987982fbbd3SHA-25632 字节 → 64 个十六进制字符。
9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08SHA-51264 字节 → 128 个十六进制字符。
ee26b0dd4af7...28a8ff (128 字符, test 的哈希)| 符号 / 代码 | 说明 | 示例 |
|---|---|---|
完整性检查 | SHA-256 或 SHA-512。传输前后比较哈希。 | sha256sum file.zip |
密码存储 | 使用 bcrypt、scrypt 或 Argon2——不要用普通 SHA。 | bcrypt(password, cost=12) |
内容寻址 | SHA-256 (Git) 或 SHA-512 (IPFS)。 | git: SHA-1 of blob |
遗留校验和 | MD5 或 SHA-1,仅用于向后兼容。 | md5sum legacy.tar.gz |
完整性检查SHA-256 或 SHA-512。传输前后比较哈希。
sha256sum file.zip密码存储使用 bcrypt、scrypt 或 Argon2——不要用普通 SHA。
bcrypt(password, cost=12)内容寻址SHA-256 (Git) 或 SHA-512 (IPFS)。
git: SHA-1 of blob遗留校验和MD5 或 SHA-1,仅用于向后兼容。
md5sum legacy.tar.gz所有哈希使用 Web Crypto API 在您的浏览器中完成。
您可以完全放心地使用,即使在隔离网络上。