安全与隐私

HMAC 生成器

在浏览器本地使用 Web Crypto 根据消息和密钥生成 HMAC-SHA-256、HMAC-SHA-384 或 HMAC-SHA-512,并输出 hex 或 base64。

输入待签名消息、临时测试密钥和算法后,HMAC 生成器会在当前浏览器中计算消息认证码。它适合学习、调试示例和核对测试向量,不上传、不保存输入,也不会替你保管生产密钥。

浏览器本地生成

HMAC 生成器

内容不会上传

消息和密钥只在当前浏览器中处理;不要粘贴生产密钥或客户隐私数据。

建议只使用测试密钥、短期调试密钥或教学示例。

使用方法

三步完成处理

  1. 01

    输入消息和测试密钥;不要粘贴生产密钥、私钥、访问 Token、助记词或客户隐私数据。

  2. 02

    选择 HMAC-SHA-256、HMAC-SHA-384 或 HMAC-SHA-512,并选择 hex 或 base64 输出。

  3. 03

    复制结果前核对接口文档要求的编码、换行、大小写、时间戳和待签名字符串拼接顺序。

HMAC 适合解决什么问题

HMAC 用共享密钥和哈希函数生成消息认证码,常用于 API 请求签名、Webhook 校验和测试向量核对。它用于验证消息和密钥是否匹配,不是加密工具,也不会隐藏消息内容。

浏览器本地处理与密钥边界

计算在当前浏览器内完成,页面不主动上传或保存消息、密钥和结果。仍需注意浏览器扩展、剪贴板、屏幕共享、设备安全状态和组织密钥管理要求;真实生产密钥应在受控环境中处理。

输出格式和人工复核

不同接口可能要求 hex、base64、大小写、前缀、换行或完整 canonical string。工具会显示算法、输出格式和字节数,便于排查编码差异,但最终仍要以接口文档和服务端验签结果为准。

常见问题

关于这个工具

HMAC 和普通哈希有什么区别?

普通哈希只根据消息计算摘要;HMAC 会同时使用共享密钥,因此可以校验消息是否由持有同一密钥的一方生成。两者都不是加密,不能隐藏消息内容。

可以把真实生产密钥粘贴进来吗?

不建议。工具本身在浏览器本地运行,但生产密钥仍应放在受控终端、后端、密钥管理系统或组织批准的调试环境中处理。

为什么我的 HMAC 和接口文档示例不同?

常见原因包括待签名字符串拼接顺序不同、换行或空格不同、时间戳参与签名、密钥编码不同、输出格式不同,或服务端要求大小写和前缀。

这个工具能验证 Webhook 吗?

它可以帮助你手动生成本地对照值,但不会连接外部服务、读取请求头、保存密钥或自动判断请求是否可信。正式 Webhook 验签应在后端完成。

继续探索

最后更新: