SHA-256 哈希生成器

请输入要哈希的文本。

粘贴文本,保持 SHA-256 选中并生成。你将得到 256 位摘要,以 64 位十六进制字符表示,这与标准校验和工具对相同字节输出的结果一致。下方列出了其他算法,便于对比。

如何生成 SHA-256 哈希值

  1. 1

    输入文本

    输入或粘贴要计算的字符串。空格、制表符和换行都属于输入的一部分。

  2. 2

    确认算法

    SHA-256 是默认选择。如果你改过算法,请重新选择 SHA-256。

  3. 3

    生成

    点击生成按钮计算摘要。

  4. 4

    复制结果

    点击 SHA-256 结果旁的复制按钮,复制 64 位字符的值。

SHA-256 摘要的样子

SHA-256 属于 SHA-2 系列。无论输入长度如何,它始终返回 256 位,以 64 位十六进制字符显示。

输入 SHA-256 摘要
hello 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824
Hello 185f8db32271fe25f561a6fc938b2e264306ec304eda518007d1764826381969

只把一个字母从小写改成大写,就会得到一个与第一个摘要看不出任何相似之处的结果。你可以在 Linux 或 macOS 上用 echo -n hello | sha256sum 验证第一个值(其中的 -n 很重要,见下文)。

常见用途

  • 完整性校验: 公布文本或配置的摘要,任何人都能确认自己拥有完全相同的内容。
  • 指纹: 从内容派生出的稳定标识符,可用于缓存键或变更检测。
  • 签名流程: 许多签名和令牌格式在签名前会先用 SHA-256 对负载进行哈希。
  • 不暴露内容的比对: 只要值不容易被猜到,双方就可以通过比较摘要而非原始值来确认是否一致。

需要注意的局限

SHA-256 的设计就是快速的。这对指纹是好事,对密码却是坏事,因为攻击者每秒可以尝试大量猜测。请使用 bcrypt、scrypt 或 Argon2id 配合唯一的盐来存储密码。本工具没有盐或密钥选项,因此只生成普通的 SHA-256,而不是 HMAC。

末尾换行的陷阱

echo hello | sha256sum 对五个字母加一个换行进行哈希,返回 5891b5b522d5df086d0ff0b110fbd9d21bb4fc7163af34d08286a2e846f6be03。上面的工具只对框中的内容进行哈希,因此在与终端对比时,请使用 echo -n。

读取 SHA-256 值

十六进制数字为 0 到 9 以及 a 到 f。字母大小写不代表任何含义,因此 2CF24DBA 和 2cf24dba 是同一个摘要。本工具输出小写,这也是大多数命令行工具和文档所采用的形式。如果某个系统返回大写,请先将两者统一为同一种大小写再比较。

将摘要粘贴到配置文件或消息中时,请包含全部 64 个字符。被截断的值看起来可能很合理,但永远不会匹配,部分前缀也不能安全地代替完整摘要。

常见问题

64 个十六进制字符。每个字符代表 4 位,而摘要为 256 位。

SHA-2 是一个系列,SHA-256 是其中一员,同系列的还有 SHA-384 和 SHA-512,本工具也提供这两者。

不是。加密可以借助密钥还原,而哈希是单向的,所以不存在需要解密的内容。

多数情况下是 shell 添加了换行符。使用 echo -n 或 printf 可以确保只对你的文本进行哈希。

相关工具

此工具还提供其他语言版本

使用指南与应用场景