HMAC 生成器
在浏览器本地使用 Web Crypto 根据消息和密钥生成 HMAC-SHA-256、HMAC-SHA-384 或 HMAC-SHA-512,并输出 hex 或 base64。
输入待签名消息、临时测试密钥和算法后,HMAC 生成器会在当前浏览器中计算消息认证码。它适合学习、调试示例和核对测试向量,不上传、不保存输入,也不会替你保管生产密钥。
浏览器本地生成
HMAC 生成器
消息和密钥只在当前浏览器中处理;不要粘贴生产密钥或客户隐私数据。
建议只使用测试密钥、短期调试密钥或教学示例。
使用方法
三步完成处理
- 01
输入消息和测试密钥;不要粘贴生产密钥、私钥、访问 Token、助记词或客户隐私数据。
- 02
选择 HMAC-SHA-256、HMAC-SHA-384 或 HMAC-SHA-512,并选择 hex 或 base64 输出。
- 03
复制结果前核对接口文档要求的编码、换行、大小写、时间戳和待签名字符串拼接顺序。
HMAC 适合解决什么问题
HMAC 用共享密钥和哈希函数生成消息认证码,常用于 API 请求签名、Webhook 校验和测试向量核对。它用于验证消息和密钥是否匹配,不是加密工具,也不会隐藏消息内容。
浏览器本地处理与密钥边界
计算在当前浏览器内完成,页面不主动上传或保存消息、密钥和结果。仍需注意浏览器扩展、剪贴板、屏幕共享、设备安全状态和组织密钥管理要求;真实生产密钥应在受控环境中处理。
输出格式和人工复核
不同接口可能要求 hex、base64、大小写、前缀、换行或完整 canonical string。工具会显示算法、输出格式和字节数,便于排查编码差异,但最终仍要以接口文档和服务端验签结果为准。
常见问题
关于这个工具
HMAC 和普通哈希有什么区别?
普通哈希只根据消息计算摘要;HMAC 会同时使用共享密钥,因此可以校验消息是否由持有同一密钥的一方生成。两者都不是加密,不能隐藏消息内容。
可以把真实生产密钥粘贴进来吗?
不建议。工具本身在浏览器本地运行,但生产密钥仍应放在受控终端、后端、密钥管理系统或组织批准的调试环境中处理。
为什么我的 HMAC 和接口文档示例不同?
常见原因包括待签名字符串拼接顺序不同、换行或空格不同、时间戳参与签名、密钥编码不同、输出格式不同,或服务端要求大小写和前缀。
这个工具能验证 Webhook 吗?
它可以帮助你手动生成本地对照值,但不会连接外部服务、读取请求头、保存密钥或自动判断请求是否可信。正式 Webhook 验签应在后端完成。
继续探索
相关工具
最后更新: