HMAC 生成器
输入
配置
算法
选择 HMAC 哈希算法
密钥格式
你的密钥采用何种编码
输出格式
如何显示生成的 HMAC
HMAC 输出
技术详情
HMAC 生成器的工作原理
工具功能
该 HMAC 生成器使用共享密钥为消息创建带密钥哈希(HMAC 签名)。它支持 HMAC SHA-1、HMAC SHA-256、HMAC SHA-384 和 HMAC SHA-512,常用于 API 认证、Webhook 验证以及消息完整性校验。你可以选择密钥的编码方式(文本、hex 或 Base64),并以 hex 或 Base64 输出 HMAC。所有计算都在你的浏览器中通过 Web Crypto API 本地运行,因此你的密钥不会离开设备。
常见开发者使用场景
开发者使用在线 HMAC 计算器来验证来自 Stripe、GitHub 或 Slack 等服务的 webhook 签名、生成 API 请求签名,以及调试 JWT 的 HMAC 签名流程。在集成需要 HMAC 认证的第三方 API 时,该工具可帮助你确认期望的签名并与服务端输出进行对比。它还可用于在测试中验证 HMAC 哈希、构建可复现示例,并排查客户端与服务端之间的编码不一致问题。
数据格式、类型或变体
该 HMAC 工具支持 SHA-1、SHA-256、SHA-384 和 SHA-512 算法,输出为 hex 或 Base64。密钥可作为纯文本(UTF-8)、十六进制或 Base64 编码的字节提供。许多集成以 hex 发布 HMAC 签名,而有些 API 期望 Base64;该生成器可帮助你匹配这些格式。请务必选择正确的密钥编码,以避免签名不匹配。
常见陷阱与边界情况
HMAC 签名对输入细节极其敏感。消息编码、空白字符或换行符的任何差异都会改变结果。请确保使用完全一致的 payload,并选择正确的密钥格式(文本 vs hex vs Base64)。SHA-1 被认为较弱,仅应在必须的旧版集成中使用。如果你的平台使用 Base64URL 而不是 Base64,你可能需要转换输出以便对比。
何时使用此工具而非代码
使用该 HMAC 生成器可在开发中快速检查、调试 webhook 验证,并验证示例签名。对于生产系统,请使用平台的加密库在代码中生成 HMAC 签名,以确保编码一致、安全的密钥处理以及正确的时间安全比较。该工具适合开发,但你的应用在生产中应以编程方式计算 HMAC。