All Tools / 开发者工具 / 哈希生成器 — MD5、SHA-1、SHA-256、SHA-512 在线
要哈希的文本
UTF-8 字节
Hex 字节显示在这里。当您的哈希和服务器不一致时,用来排查编码差异。
哈希
验证
MD5 128-bit
SHA-1 160-bit
SHA-256 256-bit
SHA-512 512-bit

哈希生成器 — MD5、SHA-1、SHA-256、SHA-512

哈希是什么?

哈希函数把任意输入变成固定长度的指纹。相同输入总是产生相同输出,改动一个字节就改变整个指纹。这个特性让哈希在文件验证、校验和、内容寻址和数字签名场景中很有用。此工具同时计算四种最常用的算法,您可以直接和任何已发布的校验和比对,无需切换工具。

如何使用

  1. 在工具栏选 文本文件 模式。
  2. 输入/粘贴文本,或把文件拖到左侧面板。
  3. 四种哈希出现在右侧面板,您输入时实时更新。
  4. 按所需算法旁的 复制
  5. 要识别一个未知哈希,把它粘贴到底部的 验证 字段。此工具会告诉您四种算法中是哪一种生成了它(如果匹配)。

常见问题

我还应该使用 MD5 或 SHA-1 吗?

用于加密目的(密码、数字签名、证书指纹)则不应该。两者都存在已知的碰撞攻击,不再被视为安全。对于速度比抗碰撞性更重要的非安全用途,它们仍可用:内容寻址、去重、ETag、文件变更检测。本工具中每个算法旁的标记反映了这一区别。

为什么一次计算四种算法而不让我选择?

用四种方式对同一输入进行哈希,文本只需微秒,普通文件只需毫秒。同时显示四种,省去你猜测待验证哈希出自哪种算法的麻烦。若只需一种,复制你需要的、忽略其余即可。

此工具能处理大文件吗?

可以,但一切都在你的浏览器中进行,因此文件大小受限于你机器的内存,而非上传带宽。SHA 函数通过 Web Crypto API 运行,速度很快。MD5 是纯 JavaScript,处理数 GB 文件可能需要几秒。查看工具栏中的输入统计可了解已加载的内容。

为什么对相同文本哈希得到的结果与我的服务器不同?

几乎总是字符编码不匹配。本工具在哈希前将文本编码为 UTF-8。若你的服务器以 UTF-16 或 Latin-1 哈希,字节流不同,哈希也就不同。对原始文件字节进行哈希(使用文件模式)可彻底避免编码歧义。

Verify 字段到底有什么用?

它将你粘贴的哈希与上方刚生成的四个哈希进行比较。若匹配其中之一,你就知道它由哪种算法生成。用它确认下载的文件与公布的校验和一致:在输入处粘贴文件,在 Verify 处粘贴公布的哈希,查看匹配指示。