HMAC 生成器 — SHA-1 / 256 / 384 / 512

使用 SHA-1/256/384/512 为任意消息和密钥生成 HMAC,输出十六进制或 Base64,全部在浏览器中完成。

🔒 全部在你的浏览器中运行。输入和输出都不会发送到服务器或被保存,十分安全。

使用浏览器的 Web Crypto API 计算,数据不会上传。

这个工具有用吗?点一下表达心情

关于此工具

为任意消息和密钥计算 HMAC(带密钥的哈希),可选择 SHA-1、SHA-256、SHA-384 或 SHA-512,并以十六进制或 Base64 输出结果。HMAC 是 API 为 Webhook 签名、并确认请求确实来自持有共享密钥一方的常用方式。签名由浏览器内置的 Web Crypto API 计算,因此你输入的消息和密钥绝不会离开设备——非常适合用来测试 Webhook 签名和 API 鉴权。

常见问题

什么是 HMAC?什么时候用它?

HMAC(基于哈希的消息认证码)将一条消息与一个密钥结合,生成一个签名。任何持有相同密钥的人都能重新计算该签名,从而确认消息未被篡改、且来自可信的发送方。它广泛用于为 API 请求签名、验证来自 Stripe 或 GitHub 等服务的传入 Webhook,以及防止令牌被篡改。

能从 HMAC 还原出原始消息吗?

不能。HMAC 是单向哈希,而非加密,因此无法将其逆向还原成原始消息。没有密钥也无法计算或验证它,而正是这把密钥让签名变得可信。要校验 HMAC,你需要用相同的消息和密钥重新计算一次,再比较两个值是否完全一致。

我的消息和密钥会被发送到服务器吗?

不会。HMAC 完全在你的浏览器中通过 Web Crypto API 计算,因此你输入的消息和密钥绝不会被上传、记录或存储。你可以放心地用真实的签名密钥进行测试;不过作为一般习惯,仍应避免在共用或公共电脑上输入生产环境的密钥。