HMAC在线生成工具

在线使用 HMAC 算法生成消息认证签名,支持 HMAC-MD5/SHA1/SHA256/SHA512,密钥和消息本地处理,适合接口签名调试。

工具功能

本工具用于在线生成HMAC(基于哈希的消息认证码)签名,支持HMAC-SHA1、HMAC-SHA256、HMAC-SHA512、HMAC-MD5四种常用算法。你可以选择密钥输入格式和输出编码格式,满足不同场景的开发需求。

使用方法

  1. 在「密钥」输入框输入你的密钥,选择密钥的编码格式:UTF-8、Hex或Base64
  2. 在「消息」输入框输入需要计算签名的消息内容
  3. 选择使用的哈希算法和输出编码格式
  4. 点击「生成HMAC签名」按钮即可得到结果,结果会自动更新,支持实时预览

计算原理

HMAC的计算遵循RFC 2104标准,公式如下:

HMAC签名有什么用途?

HMAC常用于验证消息完整性和真实性,在API身份验证(如AWS签名、OAuth)、cookie签名、接口防篡改等场景广泛使用,能够防止消息被篡改。

为什么我得到的结果和其他工具不一样?

最常见的原因是密钥编码格式或输出编码格式不一致,请确认你的密钥是按UTF-8、Hex还是Base64解析,输出也需要确认是Hex还是Base64,必须双方参数一致才能得到相同结果。

计算会把我的密钥传到服务器吗?

不会,所有计算都在你的浏览器本地完成,使用Web Crypto API加密接口,密钥和消息不会上传到任何服务器,可以放心使用。

HMAC和单纯的哈希有什么区别?

普通哈希不需要密钥,仅能生成摘要,无法做身份验证;HMAC需要一个密钥,只有持有正确密钥的一方才能计算和验证签名,既可以验证完整性也可以验证身份,安全性更高。