Base64 Files
开发工具

文件哈希生成器

为任意文件生成 SHA-256、SHA-1 和 MD5 校验值。可粘贴预期哈希值进行完整性校验。

所有文件在浏览器本地处理,不上传到服务器。

拖拽文件到此处,或点击选择

支持任意格式 · 最大 500 MB

工作原理

Web Crypto API

SHA-256 和 SHA-1 由浏览器内置的 SubtleCrypto.digest() 计算,速度快且结果可信。

MD5 纯 JS 实现

Web Crypto API 不支持 MD5(因其安全性不足),本工具内置纯 JS 实现,结果符合 RFC 1321。

文件不离开设备

所有哈希计算在浏览器本地完成,文件不上传服务器,隐私完全保留。

一键校验完整性

粘贴来自官网或发布页的预期哈希值,自动对比,立即得出匹配或不匹配结果。

算法对比

算法输出位数Hex 长度安全性典型用途
SHA-256256 bits64 chars安全验证软件下载、数字签名、文件完整性校验
SHA-1160 bits40 chars已过时Git commit ID、老旧系统兼容、非安全校验
MD5128 bits32 chars不安全文件传输校验、数据库 Etag、非安全指纹

命令行等效操作

对于超大文件或自动化流程,命令行工具更合适:

环境命令
Linux / macOS (SHA-256)sha256sum filename.zip
Linux / macOS (MD5)md5sum filename.zip
macOS (MD5 alternative)md5 filename.zip
Windows (SHA-256)certutil -hashfile filename.zip SHA256
Windows (MD5)certutil -hashfile filename.zip MD5
Node.js (SHA-256)require('crypto').createHash('sha256').update(fs.readFileSync('f')).digest('hex')
Python (SHA-256)import hashlib; hashlib.sha256(open('f','rb').read()).hexdigest()

相关工具

常见问题

应该选哪种哈希算法?

验证软件下载、数字签名等安全场景请选 SHA-256。SHA-1 仍出现在老旧系统中,但 2017 年后已不被视为密码学安全。MD5 适合文件去重、缓存 key 等非安全校验,绝对不能用于身份认证或数字签名。

文件会被上传到服务器吗?

不会。SHA-256 和 SHA-1 使用浏览器内置的 Web Crypto API(SubtleCrypto.digest)计算,MD5 由纯 JavaScript 实现。整个过程在本地完成,文件不会离开你的设备。

怎么用这个工具验证下载的文件?

下载文件后,拖入本工具。从软件官网或发布页复制预期的 SHA-256 值,粘贴到"校验哈希"输入框,选择 SHA-256。绿色表示文件与官方发布完全一致;不匹配则说明文件可能损坏或被篡改。

支持最大多大的文件?

最大 500 MB。整个文件会以 ArrayBuffer 形式读入内存后再计算哈希,实际上限取决于可用内存。超大文件建议使用命令行工具:Linux/macOS 用 sha256sum,Windows 用 certutil。

Web Crypto API 为什么不支持 MD5?

MD5 被刻意排除在外,因为它在密码学上已被攻破——碰撞攻击已经可以实用化。本工具内置纯 JS 的 MD5 实现,输出结果符合 RFC 1321,但请不要将 MD5 用于任何安全目的。

能对文本字符串而不是文件计算哈希吗?

本工具对文件的原始字节计算哈希。如果要对文本计算,把文本保存成 .txt 文件拖入即可。哈希结果覆盖内容的原始 UTF-8 字节,和大多数命令行工具的行为一致。