SHA-256 哈希
免费在线 SHA-256 哈希计算器:支持文本、文件与批量模式,可同时输出 MD5 / SHA-1 / SHA-256 / SHA-384 / SHA-512 五种摘要。Hex / Base64 自由切换,拖拽即算,纯浏览器本地运行,零上传。
免费在线 SHA-256 哈希计算器:支持文本、文件与批量模式,可同时输出 MD5 / SHA-1 / SHA-256 / SHA-384 / SHA-512 五种摘要。Hex / Base64 自由切换,拖拽即算,纯浏览器本地运行,零上传。
从纯 SHA-256 升级到带密钥的 HMAC,用于接口签名
检查基于 HMAC-SHA256 的 JWT 签名
SHA-2 家族中强度更高的 512 位变体
并行计算 MD5,满足多算法交叉校验流程
与 SHA-256 一起输出,兼容遗留系统
增量计算多 GB 级别大文件的 SHA-256 摘要
SHA-256 是 SHA-2 家族的密码学哈希函数,由 NSA 设计、NIST 在 FIPS 180-4 中标准化。它以 512 位为一块进行处理,共 64 轮比特混合,最终输出固定 256 位(64 字符十六进制)的摘要。截至 2026 年,针对完整 64 轮 SHA-256 尚无已知的实际碰撞或原像攻击。
可以。大多数软件发布者(Linux 发行版、Docker 镜像、npm 包等)会在下载链接旁公布 SHA-256 校验值。下载完成后,本地计算文件的 SHA-256 摘要并与公布值对比,若完全一致则文件与发布者版本逐字节相同。
MD5 已被公开的碰撞攻击攻破(消费级硬件上几秒即可构造前缀碰撞),因此不再适用于安全场景。SHA-256 输出 256 位摘要,经过 25 年公开审查无已知实际攻击,并被 NIST 批准用于联邦场景。新项目需要哈希时,SHA-256 是默认选择。
不能。SHA-256 是单向函数:从摘要反推原始输入在计算上不可行。实际可行的「反查」方式是查询彩虹表——即预计算的输入→摘要对照库——这也是为什么在存储密码时必须加盐。
不适合,应改用慢速加盐的密钥派生函数。SHA-256 是快速哈希,攻击者拿到 SHA-256 密码库后可以在一块 GPU 上每秒暴力枚举数十亿候选。推荐使用 Argon2id(首选)、scrypt 或 bcrypt,并为每个用户使用独立盐值。如果必须使用 PBKDF2,至少使用 PBKDF2-HMAC-SHA256 并设置足够大的迭代次数。
非常适合。AWS SigV4、GitHub Webhooks、Slack 签名密钥、JWT HS256、OAuth 1.0a 等主流接口签名方案都依赖 HMAC-SHA256。本工具支持 UTF-8 / Hex / Base64 三种密钥编码方式,便于端到端复现或调试签名。
两者都输出 256 位摘要且安全性相当,但内部结构不同。SHA-256 基于 SHA-2 家族(FIPS 180-4)的 Merkle–Damgård 结构;SHA-3 是 NIST 2012 年选定的海绵结构 Keccak 算法。SHA-3 适合需要长期密码学敏捷性的场景;SHA-256 目前的实际部署更广泛。
比特币的工作量证明、区块头、交易 ID 和 Merkle 树承诺都使用 SHA-256(有时连续两次,称为 double-SHA-256)。SHA-256 提供的固定长度输出、抗碰撞性、快速验证、确定性结果,恰好是分布式账本需要用来检测篡改、达成共识的关键属性。
不会。所有哈希计算都在你的浏览器本地通过 Web Crypto API 完成。你键入、粘贴或拖入的任何内容都不会通过网络传输。本页面加载完成后可以离线使用。
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855。这是空字符串的标准 SHA-256 摘要,被许多密码学库用作自检向量。
SHA-256 是一种密码学哈希函数,属于 SHA-2 家族,由美国国家安全局(NSA)设计,并由 NIST 在 FIPS 180-4(2012)中标准化。它接受任意长度的输入——从空字符串到数 GB 的文件——并输出固定 256 位(64 字符十六进制)的摘要。
算法以 512 位(64 字节)为一块进行处理,共 64 轮混合。内部维护 8 个 32 位状态字(A 至 H),由前 8 个质数的平方根推导出的常量初始化。每轮使用比特旋转、异或、加法以及两个非线性函数 Ch(选择)和 Maj(多数)。每轮常量来自前 64 个质数的立方根,赋予算法强雪崩效应:输入变化 1 比特,输出约一半的比特会发生翻转。
截至 2026 年,针对完整 64 轮 SHA-256 尚未出现已知的实际碰撞攻击或原像攻击。已公开的最佳密码分析仅能攻击减轮变体。其抗碰撞强度约 2^128 次操作,远超任何实际对手的能力,因此 SHA-256 广泛用于 TLS 证书签名、比特币工作量证明、文件完整性校验以及 IPFS、现代 Git 等内容寻址系统。
SHA-256 不适合用于密码存储。它是快速哈希——现代 GPU 每秒可计算数十亿次摘要——攻击者一旦窃取 SHA-256 密码库,可以快速暴力破解常见密码。密码场景应使用慢速加盐 KDF,如 Argon2id、scrypt 或 bcrypt。其他场景下,SHA-256 是现代默认选择。
SHA-256 由 NIST 在 FIPS 180-4 中标准化,由 IETF 在 RFC 6234 中定义,被美国政府批准用于联邦信息系统。它是 NIST SP 800-131A Rev. 2 转换指南中推荐使用的默认算法,也是 CMS、TLS 1.3 和 PGP 签名中唯一仍被接受用于新实现的哈希函数。
空字符串有且只有一个公开的 SHA-256 摘要,在日志、缓存、CDN 和存储系统中随处可见。
输入 : (空) SHA-256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
SHA-256 实现的经典测试向量,许多密码学库使用此字符串作为自检用例。
输入 : hello SHA-256: 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824
网络上引用最多的 SHA-256 示例,常见于教程、RFC 和维基百科。
输入 : hello world SHA-256: b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9
用浏览器原生 Web Crypto API,4 行代码即可在生产环境计算 SHA-256,零依赖、零上传。
const buf = new TextEncoder().encode('hello')
const hash = await crypto.subtle.digest('SHA-256', buf)
const hex = [...new Uint8Array(hash)]
.map(b => b.toString(16).padStart(2, '0'))
.join('')
console.log(hex)
// 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824Python 3.6+ 标准库自带 SHA-256,无需安装任何依赖。
import hashlib print(hashlib.sha256(b'hello').hexdigest()) # 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824
一行命令即可校验下载文件。macOS 自带 shasum -a 256,Linux 自带 sha256sum。
$ echo -n 'hello' | sha256sum 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824 - $ sha256sum installer.dmg e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 installer.dmg
| Format | MIME | Browser support | When to use |
|---|---|---|---|
| MD5 | 128 位(32 Hex) | 全平台 | 碰撞已被攻破,仅用于非安全场景的校验和与遗留兼容。 |
| SHA-1 | 160 位(40 Hex) | 全平台 | 已于 2017 年被 SHAttered 攻破,新系统请改用 SHA-256。 |
| SHA-256 | 256 位(64 Hex) | Web Crypto API | 现代默认。TLS、文件完整性、比特币、Git、JWT HS256 与 HMAC-SHA256 首选。 |
| SHA-384 | 384 位(96 Hex) | Web Crypto API | 截断版 SHA-512,常见于 TLS 1.2 密码套件与 DNSSEC NSEC3。 |
| SHA-512 | 512 位(128 Hex) | Web Crypto API | SHA-2 中强度最高的变体,64 位 CPU 上比 SHA-256 更快。 |
| SHA-3 / Keccak | 256 / 512 位 | 部分支持 | 2012 年 NIST 胜出者,sponge 结构。长期密码学敏捷性场景推荐。 |
A real MP3 file encoded to a Data URI — copy-ready:
输入 : hello world SHA-256: b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9 输入 : (空) SHA-256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
本 SHA-256 计算器 100% 在你的浏览器中运行,使用浏览器原生 Web Crypto API。无论你输入文本、上传文件还是粘贴批量数据,都只在本地进行哈希处理,不会发送到任何服务器。我们不会对哈希输入做埋点、不记录日志、不缓存摘要,也不在工具页面上放置任何第三方追踪脚本。Verify 校验的比对同样在客户端完成。可放心处理敏感内容:API 密钥、内部文件名、HMAC 密钥、客户数据等所有你不会随便粘贴到陌生在线 SHA-256 工具的内容。