SHA-256 加密SHA-256 Hash
输入文本实时计算 SHA-256 摘要,64 位大小写与 Base64 三种格式逐行复制,UTF-8 中文不乱码,与 sha256sum / openssl / Java 结果一致。校验文件指纹、调试签名、排查区块链数据更快。数据全程不上传。
Base64 为 32 字节原始摘要的编码形式(44 字符),与 64 位十六进制内容等价,常见于二进制摘要字段场景。
工具介绍
3 段详细说明SHA-256 计算是面向开发者与普通用户的一站式 SHA-256 摘要工具。输入任意文本,立即得到 256 bit(64 个十六进制字符)标准摘要,并同时给出 64 位大写、Base64 两种常用变体,逐行一键复制,核对文件指纹、调试签名、排查数据一致性更快。
算法基于 FIPS 180-4 纯前端实现,完整兼容 UTF-8,中文、emoji 均按字节正确编码,与 Linux sha256sum、OpenSSL openssl dgst -sha256、Java MessageDigest、Python hashlib 等主流实现结果完全一致。
所有计算都在浏览器内存中完成,输入内容不上传任何服务器。支持边输入边实时出结果、⌘+↵ 快捷键执行、断网可用,适合核对下载文件、复现接口签名、生成去重指纹等高频场景。
基础知识 · SHA-256 摘要
FIPS 180-4 · 256 bitSHA-256(Secure Hash Algorithm 256)是输出 256 位摘要的密码学哈希函数。理解以下 6 个要点,就能正确、安全地使用它:
digest固定 256 位摘要one-way单向不可逆avalanche雪崩效应sha256("abc") 与 sha256("abd") 的结果完全不同且无规律,因此能敏感地发现内容被篡改。collision尚无实用碰撞攻击fips 180-4出处与流程FIPS 180-2(现行为 FIPS 180-4)。流程:填充至 512 bit 整数倍 → 按 512 bit 分组 → 64 轮压缩(Ch / Maj / Σ 函数)→ 级联 8 个 32 位寄存器 H0–H7 得到 256 bit 摘要。salt & hmac密码存储的正确姿势HMAC-SHA256 而非裸哈希,防长度扩展攻击。echo -n "abc" | sha256sum —— Linux 下验证:注意 -n 去掉行尾换行,否则结果不同(多算了一个 \n 字节)。hashlib.sha256(b'abc').hexdigest()、MySQL SELECT SHA2('abc', 256)、OpenSSL echo -n abc | openssl dgst -sha256 均返回 ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad,可互验。口令存储 必须用慢哈希,加密 请用 AES / ChaCha20 等真正的对称加密算法。使用说明
4 步快速入门使用场景
5 个真实案例官网提供的 SHA-256 校验码与本地下载文件比对,确认安装包 / 固件未被篡改。
多数云厂商与支付网关用 SHA-256 参与参数签名,复现拼接规则排查验签失败。
比特币区块头用双 SHA-256,智能合约与链上数据也常以 SHA-256 做内容寻址。
对文本生成摘要,对比传输前后是否一致,快速发现内容被篡改或截断。
把长 URL / 长文本压成固定 64 字符 Key,用作缓存索引或重复内容判定。
常见问题
10 个问答SHA-256 是什么?有什么用?
SHA-256(Secure Hash Algorithm 256)是一种输出 256 位(64 个十六进制字符)摘要的哈希算法,由 NSA 设计、2001 年随 FIPS 180-2 发布,现行为 FIPS 180-4。任意长度输入都得到固定长度的「指纹」,是当前签名、证书、区块链、文件校验场景的事实标准。
SHA-256 能解密吗?
不能。SHA-256 是单向哈希,数学上不可逆。网上所谓「解密」是拿彩虹表反查常见短字符串,复杂原文(尤其加盐后)无法还原。本工具只做正向计算。
我的输入会上传到服务器吗?
不会。SHA-256 计算完全在浏览器内存中完成,输入内容不上传任何服务器。可断网使用,关闭网络后再打开仍能正常使用。
SHA-256 和 MD5 / SHA-1 什么区别?
摘要长度不同:MD5 是 128 位(32 字符)、SHA-1 是 160 位(40 字符)、SHA-256 是 256 位(64 字符)。安全强度上 MD5 与 SHA-1 都已被实证碰撞并被主流体系弃用,SHA-256 目前没有可行的实际碰撞攻击,是新项目的默认选择。
结果和 Linux sha256sum / openssl 一致吗?
一致。本工具严格按 FIPS 180-4 实现,UTF-8 输入下与 sha256sum、openssl dgst -sha256、Java MessageDigest、Python hashlib.sha256 等主流实现完全相同,可放心互验。
为什么同样的中文,算出来的 SHA-256 和别人不一样?
大概率是编码不同:本工具按 UTF-8 字节计算,若对方按 GBK / GB2312 编码,同一句话结果不同。中文环境对接老系统时请先确认对方编码。
SHA-256 能用来存密码吗?
不建议直接存。SHA-256 速度太快,GPU 每秒可试数百亿次,普通哈希挡不住暴力破解。正确做法是每用户随机盐 + 慢哈希(bcrypt / scrypt / argon2),需要摘要时也建议用 HMAC 形式替代裸哈希。
SHA-256 会被破解吗?
目前没有实用攻击。理论上的原像 / 第二原像与碰撞攻击在 SHA-256 上仍属学术研究范畴,主流标准与浏览器证书体系全面依赖它。真正的风险来自「弱随机」「简单口令」和「把它当加密用」这类用法问题,而不是算法本身被攻破。
Base64 格式是什么?哪里会用到?
Base64 是 32 字节原始摘要(而非十六进制字符串)的编码形式,固定 44 字符、以 = 结尾。部分云存储字段、二进制协议与老框架使用该格式,与 64 位十六进制内容等价、只是编码不同。
SHA-256 和 SHA-512 / SHA-3 怎么选?
常规场景选 SHA-256:性能与安全平衡最好,生态支持最广(TLS、Git、区块链、云厂商签名均是)。SHA-512 输出更长但在小输入时并不总是更快;SHA-3 是结构全新的海绵函数,抗碰撞理论更强但生态兼容性弱于 SHA-2。除非有明确的合规要求,选 SHA-256 即可。
相关工具
编码加密分类数据来源
隐私优先FIPS 180-4 纯 TypeScript 实现,零第三方依赖、无 WASM。输入经 TextEncoder 按 UTF-8 编码后逐字节计算,中文 / emoji 不乱码,与 sha256sum、openssl、Java MessageDigest 等主流实现结果一致。