🔐 HMAC消息认证码生成器 | 带密钥的哈希签名工具

在线计算HMAC-SHA256/512/1/MD5,验证消息完整性与身份合法性,密钥本地处理,安全透明

输出长度256 bits
只有通信双方知晓的密钥
待签名的原始内容

输入密钥和消息后,将实时生成HMAC签名

🔍 关于HMAC消息认证码工具

什么是HMAC?本工具如何工作?

HMAC (Hash-based Message Authentication Code) 是一种基于密码哈希函数的消息认证码。它结合了密钥和消息,通过两次哈希运算生成固定长度的签名,用于验证消息的完整性和来源的合法性。

本工具在浏览器本地实时计算HMAC:您输入的密钥和消息不会上传至任何服务器,算法由加密库(crypto-js)在您当前页面执行。支持SHA256、SHA512、SHA1、MD5四种基础算法,输出同时提供Hex和Base64两种编码,方便开发者调试或集成。

HMAC 与普通哈希 (如SHA256) 的区别

普通哈希(如SHA256)仅对数据本身生成摘要,任何人都可以计算;而HMAC需要密钥,只有持有相同密钥的双方才能生成和验证签名。因此HMAC能同时保证:

  • 数据完整性 —— 消息被篡改则签名不匹配。
  • 身份认证 —— 能生成正确签名的一方必然拥有密钥。

典型的应用包括:JWT令牌签名、API请求防篡改、Webhook回调验证、数据库密码加固等。

安全使用建议

🔐 密钥强度

使用足够长且随机的密钥(至少32字节),避免使用简单短语。本工具密钥完全由您输入,建议遵循“高熵”原则。

⚙️ 算法选择

优先选择HMAC-SHA256或HMAC-SHA512。HMAC-MD5和HMAC-SHA1目前被认为较弱,仅用于兼容遗留系统。

🔄 双重验证

HMAC通常结合时间戳或随机数(nonce)使用,防止重放攻击。本工具仅演示核心签名,实际系统需考虑上下文。

📘 使用步骤

  • ① 选择基础哈希算法(默认为SHA256)
  • ② 输入双方约定的密钥(Secret Key)
  • ③ 输入需要认证的消息内容
  • ④ 下方实时显示HMAC的Hex和Base64签名
  • ⑤ 点击复制按钮可快速拷贝到剪贴板