编码 / 解码
哈希值生成
哈希值生成工具可以从你输入的文本或文件一次性计算 MD5、SHA-1、SHA-256、SHA-512 等多种哈希值。无论是 md5 转换、sha256 计算,还是 checksum 校验,都可以在同一个页面内完成。
输入的文本与文件全程在浏览器中完成,不会上传至服务器。
相关工具
Base64 编码 / 解码
在文本与 Base64 字符串之间互相转换。支持 URL-safe Base64 与 76 字符换行(MIME),输入时即时显示结果。全程在浏览器中完成。
图片 ⇄ Base64 转换
可在图片文件与 Base64 字符串(Data URL)之间互相转换,并自动生成 CSS / HTML / Markdown 代码片段。全程在浏览器中完成。
URL 编码 / 解码
URL 编码 / 解码工具可将文本转换为百分号编码(percent-encoding)格式,或将其还原为原始文本。支持查询参数模式和完整 URL 模式,并可选择以「+」表示空格。结果实时更新,全程在浏览器中完成。
JWT 解码器
粘贴 JWT(JSON Web Token)即可拆分为标头、负载、签名三部分,并以 JSON 形式清晰显示。iat / exp / nbf 等标准声明会转换为可读的日期时间,并提示过期状态。可选支持 HS256 / HS384 / HS512 的签名验证。全程在浏览器中完成。
哈希值生成是什么?
哈希值生成工具可以从你输入的文本或文件一次性计算 MD5、SHA-1、SHA-256、SHA-512 等多种哈希值。无论是 md5 转换、sha256 计算,还是 checksum 校验,都可以在同一个页面内完成。
在「文本」模式下,每次输入都会即时更新所有哈希值,无需点击「计算」按钮。中文、日文、表情符号等多字节字符会自动按 UTF-8 编码处理。切换到「文件」模式后,将文件拖放或通过「选择文件」按钮选取,即可同时得到 4 种算法的结果。
输出格式可在 16 进制(小写)、16 进制(大写)、Base64 之间一键切换,方便与命令行工具(shasum、md5sum)或 HTTP Digest 头等不同表示对齐。在「哈希校验」输入框粘贴期望值(hex 或 Base64 均可),即可针对每个算法显示 ✓ / ✗,校验下载文件的完整性也十分简单。
将上方「计算模式」切换为 HMAC 后,会出现密钥输入框,可生成 HMAC-SHA1 / HMAC-SHA256 / HMAC-SHA512。常用于 Webhook 签名校验或 API 请求签名的手动确认。注意:HMAC 模式下不支持 MD5(浏览器内置 Web Crypto API 没有 HMAC-MD5 实现)。
输入的文本、文件以及密钥全部在浏览器内处理,绝不上传到任何服务器。包含敏感信息的字符串与文件也可放心使用。全程在浏览器中完成。
使用方法
- 在顶部「计算模式」中选择「哈希」或「HMAC(带密钥)」。选择 HMAC 时,下方会出现密钥输入框。
- 在「输入」中切换「文本」或「文件」。文本直接粘贴;文件通过拖放或「选择文件」按钮加载。
- 在「算法」中勾选要计算的哈希(MD5 / SHA-1 / SHA-256 / SHA-512),默认全部开启。
- 在「输出格式」中选择 16 进制(小写 / 大写)或 Base64。对齐命令行输出时通常使用小写 hex。
- 校验文件完整性等场景下,可在「哈希校验」输入期望值(hex 或 Base64 均可),会针对每个算法显示 ✓ / ✗。
- 点击结果卡片右上方的「复制」按钮,将该算法的哈希值复制到剪贴板。
使用场景
- 确认下载的 ZIP / DMG / ISO 文件是否与发行方公开的 checksum 一致。
- 学习并验证 Git 对象 ID(SHA-1)的生成规则,或手动计算对象的 SHA-1。
- 在实现 JWT、OAuth、Webhook 等流程时,比对服务器生成的 HMAC-SHA256 签名是否与本地结果一致。
- 实现 AWS Signature V4 或 Slack / GitHub Webhook 签名前,先手动复现签名结果以确认实现方向。
- 为短字符串(密码、令牌、URL 等)快速生成 MD5 / SHA-256,粘贴到文档或工单中。
注意事项
- 文本会先按 UTF-8 编码再计算哈希,因此中文、日文、表情符号、特殊符号等多字节字符均可直接输入。
- 文件会被加载到浏览器内存中进行计算,单个文件大小上限为 50 MB,超过则会显示错误。
- MD5 与 SHA-1 已存在实际可行的碰撞攻击,不再适合安全相关用途(密码保存、防篡改、电子签名等)。仅在与既有规范保持兼容时使用(如 checksum 校验、Git 对象 ID)。新项目请优先选择 SHA-256 或更高强度。
- HMAC 模式不支持 MD5(Web Crypto API 仅支持 HMAC over SHA-1 / SHA-256 / SHA-384 / SHA-512)。
- HMAC 密钥按 UTF-8 字节序列解释。如果密钥已经是 hex 或 Base64 编码,请先在外部解码后再粘贴。
- Base64 输出采用标准字母表(A–Z, a–z, 0–9, +, /, 含 = 填充),并非 URL-safe 变体。等价于 `openssl ... -binary | base64` 的输出。
- 哈希校验字段忽略大小写、空白和「:」分隔符,hex 与 Base64 形式的期望值均可直接粘贴。