在线 HMAC 生成器,使用自定义密钥和 MD5、SHA1、SHA256、SHA512 等哈希函数生成消息认证码(HMAC),适合 API 签名验证和数据完整性校验。
HMAC(哈希消息认证码)将密码哈希函数与密钥结合,同时验证数据完整性和真实性。
普通哈希只验证数据完整性。HMAC 还需要共享密钥,只有拥有密钥的一方才能验证真实性。
HMAC 常用于 API 请求签名:客户端将请求参数 + 时间戳用密钥生成 HMAC,附加在请求头中,服务端用相同密钥重新计算 HMAC 进行验证。这确保了请求未被篡改,且只有持有密钥的客户端才能发送合法请求。
API 签名流程:服务端和客户端共享一个密钥(secret);客户端用 HMAC 对请求内容(URL+时间戳+body)签名,将签名放入请求头;服务端用同样密钥重新计算 HMAC,与请求头中的签名对比,相同则认证通过。时间戳防止重放攻击,通常允许 5 分钟窗口。AWS、Stripe、GitHub Webhooks 都使用此方案。