数据安全提示: 所有计算均在您的浏览器本地完成,密钥和消息不会上传到服务器。

HMAC哈希计算器

基于CryptoJS
输入类型:
输出格式:
当前操作:文本HMAC-SHA256

哈希算法

SHA256
SHA512
SHA384
SHA1
MD5
SHA3
安全性: 速度: 中等

密钥

字符数: 19 字节数: 19

建议使用至少16字符的强密钥

消息

字符数: 43 字节数: 43

HMAC哈希可视化

256位哈希值,32字节,64十六进制字符 SHA256算法

HMAC结果

计算结果将显示在这里...
等待输入... 长度: 0

HMAC算法原理

HMAC = H((K ⊕ opad) || H((K ⊕ ipad) || m))

1. 密钥处理

如果密钥长度大于块大小,先哈希;否则补0到块大小。

2. 内部填充

密钥 ⊕ ipad (0x36重复) + 消息 → 哈希

3. 外部填充

密钥 ⊕ opad (0x5C重复) + 内部哈希 → 最终HMAC

4. 安全特性

抗碰撞、抗长度扩展、需要密钥防止伪造

应用场景

API身份验证

客户端使用共享密钥计算请求的HMAC,服务器验证。

消息完整性验证

防止传输过程中消息被篡改。

安全Cookie

对Cookie内容签名,防止客户端篡改。

交易签名

金融交易、区块链中验证交易合法性。

安全最佳实践

  • 密钥长度 ≥ 16字节,推荐32字节随机生成
  • 定期轮换 密钥(如每3-6个月)
  • 不同环境 使用不同密钥(开发/测试/生产)
  • 安全比较 使用 timingSafeEqual 防止时序攻击
  • 算法选择 推荐 HMAC-SHA256,避免 MD5/SHA1

快速提示

  • 密钥强度影响安全性
  • 支持文件HMAC计算
  • 输出可选 Hex / Base64
  • 一键复制结果
  • 本地计算,数据安全

技术信息

标准:RFC 2104
块大小:64/128字节
算法库:CryptoJS
版本:4.1.1

需要其他哈希工具?

免费为您开发定制化工具