🔐 HMAC消息认证码生成器 | 带密钥的哈希签名工具
在线计算HMAC-SHA256/512/1/MD5,验证消息完整性与身份合法性,密钥本地处理,安全透明
只有通信双方知晓的密钥
待签名的原始内容
输入密钥和消息后,将实时生成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签名
- ⑤ 点击复制按钮可快速拷贝到剪贴板