HMAC 生成器

使用 SHA-256、SHA-384 或 SHA-512 生成 HMAC 签名,支持 Hex 和 Base64 输出。完全在浏览器中运行,数据不上传服务器。

100% 浏览器端运行 数据不离开你的设备 免费 · 无需注册
Algorithm
Output

使用方法

  1. 输入需要认证的消息
  2. 输入你的密钥
  3. 选择算法(SHA-256、SHA-384 或 SHA-512)。
  4. 选择输出格式(HexBase64)。
  5. 点击 Generate HMAC 并复制结果。

常见使用场景

  • Webhook 验证:验证 Webhook 载荷是否由可信发送方签名。
  • API 请求签名:对 API 请求签名,证明其真实性,同时无需传输密钥本身。
  • 数据完整性:为消息附加 HMAC,接收方可验证消息未被篡改。
  • 会话令牌:生成防篡改的会话标识符。

FAQ

什么是 HMAC?

HMAC(基于哈希的消息认证码)是一种将密码哈希函数与密钥相结合的消息认证码。它用于同时验证消息的数据完整性和来源真实性。

我的数据会发送到服务器吗?

不会。本工具使用浏览器内置的 Web Crypto API(SubtleCrypto)执行所有加密操作。你的消息和密钥不会离开浏览器。

应该选择哪种算法?

SHA-256 是最广泛使用的算法,适合大多数场景。SHA-384 和 SHA-512 提供更大的安全余量但输出更长。三者用于 HMAC 时均被认为是安全的。

Hex 和 Base64 输出有什么区别?

两者都是对同一 HMAC 二进制值的不同文本编码。Hex 使用十六进制字符(0-9, a-f),较长;Base64 更紧凑,常用于 HTTP 头部(如 Authorization)和 JSON。

可以用它验证 Webhook 签名吗?

可以。许多服务(GitHub、Stripe、Slack 等)使用 HMAC-SHA256 对 Webhook 载荷签名。将原始载荷作为消息输入,将服务的 Webhook 密钥作为密钥,然后将结果与签名头部对比即可。