HMAC在线生成器
支持MD5、SHA-1、SHA-2、SHA-3等多种算法的HMAC消息认证码计算工具,可单个或批量计算。
【本地执行模式】 : 您的所有数据均在浏览器中处理,不会上传服务器,数据安全有保障。不放心的,可等待页面加载完成后 断网使用!(需提前登录账号)
【速度及稳定性】 : 处理速度由您的机器配置决定。由于浏览器差异,少数工具可能出现无法使用或异常:请使用:软件版工具。
【速度及稳定性】 : 处理速度由您的机器配置决定。由于浏览器差异,少数工具可能出现无法使用或异常:请使用:软件版工具。
工具使用
HMAC验证用于检查消息是否被篡改。输入原始消息、密钥和期望的HMAC值,工具将自动对比验证。
计算得到的HMAC:
期望的HMAC:
使用说明
软件使用说明
- 选择计算模式:工具提供三种模式:
- 单个计算:适合对单条文本消息进行HMAC计算,支持实时计算和多算法对比
- 批量计算:适合对多个文件批量计算HMAC值,支持拖拽上传
- HMAC验证:用于验证消息完整性,对比计算值与期望值是否匹配
- 选择HMAC算法:根据需求选择合适的哈希算法,支持MD5、SHA-1、SHA-2系列(SHA-224/256/384/512)、SHA-3系列(SHA3-256/512)以及RIPEMD-160。推荐使用HMAC-SHA256,安全性与性能平衡较好。
- 输入密钥:
- 手动输入密钥或点击"生成"按钮自动生成高强度随机密钥
- 选择密钥的编码格式:UTF-8文本、十六进制或Base64
- 点击眼睛图标可切换密钥的显示/隐藏状态
- 密钥强度指示器会实时评估密钥安全等级(弱/较弱/中等/强/非常强)
- 输入消息内容:
- 单个模式:在文本框中输入要计算HMAC的消息,支持UTF-8文本、十六进制、Base64格式
- 批量模式:点击选择文件或直接拖拽文件到上传区域,可一次选择多个任意类型的文件
- 验证模式:输入原始消息和期望的HMAC值,工具自动对比验证
- 选择输出格式:支持十六进制小写、十六进制大写、Base64三种输出格式。
- 高级功能:
- 实时计算:开启后输入内容时自动计算结果,无需手动点击按钮
- API签名模板:内置AWS、微信支付、支付宝、GitHub Webhook、JWT等常见签名模板
- 多算法对比:勾选后可同时查看所有算法的计算结果
- 二维码生成:将HMAC结果生成二维码,方便移动端扫码获取
- 计算历史:自动保存最近20条计算记录,点击可快速恢复
- 键盘快捷键:Ctrl+Enter快速计算,Ctrl+Shift+C复制结果
- 查看与导出结果:
- 单个模式:可复制结果、生成二维码,或开启多算法对比
- 批量模式:支持复制全部结果,下载ZIP压缩包(含CSV和TXT)或JSON格式文件
- 验证模式:自动识别十六进制和Base64格式,显示匹配/不匹配的验证结果
常见问题
答:HMAC(Hash-based Message Authentication Code)是一种基于哈希函数的消息认证码,它结合了密钥和哈希算法来验证消息的完整性和真实性。常用于API接口签名验证、数据完整性校验、会话令牌生成、安全通信协议等场景。
答:推荐使用HMAC-SHA256,它在安全性和性能之间取得了良好平衡,被广泛应用于TLS、SSH等安全协议。如需更高安全性可选择SHA-384或SHA-512;如需兼容旧系统可使用SHA-1或MD5,但安全性较低。SHA-3系列提供了不同于SHA-2的安全特性,适合对安全性有特殊要求的场景。
答:密钥是HMAC安全性的关键。建议:1)密钥长度至少与所选哈希算法输出长度相同(如SHA-256建议使用32字节密钥);2)使用随机生成的密钥而非简单密码;3)妥善保管密钥,不要在不安全的渠道传输;4)定期更换密钥。您可以使用工具内置的"生成"按钮创建随机密钥,并通过密钥强度指示器确认密钥安全等级。
答:不会。所有的HMAC计算都完全在您的设备本地完成,您输入的消息、密钥和选择的文件都不会上传到任何服务器。计算历史记录也仅保存在浏览器本地存储中,关闭浏览器或清除缓存即可删除。这种设计确保了您的敏感数据和密钥的安全性与隐私性。
答:可能的原因包括:1)输入编码格式不同(UTF-8、十六进制、Base64会产生不同结果);2)输出格式不同(大小写、Base64);3)消息中包含不可见字符如换行符或空格;4)选择的哈希算法不同。请确保计算时使用完全相同的参数设置。您可以使用"HMAC验证"功能来对比两个HMAC值是否一致。
答:HMAC计算需要读取整个文件内容,大文件会消耗较多内存和CPU资源。建议:1)单个文件大小不超过100MB;2)批量处理时分批进行,每批10-20个文件;3)关闭其他占用资源的程序;4)使用SHA-256等中等长度算法,避免使用SHA-512等计算量较大的算法。工具已优化为异步处理模式,计算过程中界面不会卡死。
答:普通哈希(如SHA-256)只需要消息输入,任何人都可以计算相同消息的哈希值;而HMAC需要消息和密钥两个输入,只有知道密钥的人才能计算和验证正确的HMAC值。因此HMAC不仅能验证数据完整性,还能验证消息来源的真实性,具有更强的安全特性。
答:切换到"HMAC验证"标签页,输入相同的算法、密钥和原始消息,再粘贴您收到的HMAC值,点击验证即可。工具会自动计算HMAC并与期望值对比,支持自动识别十六进制(大小写均可)和Base64格式。验证通过表示消息未被篡改,验证失败则说明消息内容、密钥或算法可能不一致。
答:在单个计算模式下,点击"API签名模板"按钮选择对应的平台模板(如AWS、微信支付、GitHub Webhook等),工具会自动填充示例数据和推荐算法。您只需将密钥和消息替换为实际值即可快速计算签名。请注意模板仅为演示格式,实际使用时需按照各平台的签名规范构造消息内容。
答:工具支持以下键盘快捷键:1)Ctrl+Enter:快速执行计算(在任意模式下均可使用);2)Ctrl+Shift+C:快速复制当前计算结果到剪贴板。使用快捷键可以显著提升操作效率,特别适合需要频繁计算和对比的调试场景。