不可逆哈希算法-HMAC

一:百科

HMAC运算利用hash算法,以一个消息M和一个密钥K作为输入,生成一个定长的消息摘要作为输出。支持的算法包括:MD5,sha1、sha256、SM3等。是以HMAC-MD5,HMAC-SM3的HMAC-X命名。

二:目的

由于要求,需要使用HMAC-SM3来验证消息的完整性和真实性,确保数据在传输和存储过程中不被篡改。

三:测试

SM3不在Java标准库中,需要添加jar包

四:代码

public static String hmacSm3(String data,String key){

Digest digest=new SM3Digest();

HMac hmac=new HMac(digest);

hmac.init(new KeyParameter(key.getBytes()));

hmac.update(data.getBytes(StandardCharsets.UTF_8),0,data.getBytes().length);

byte\[\] hmac_sm3=new bytehmac.getMacSize();

hmac.doFinal(hmac_sm3, 0);

return Hex.toHexString(hmac_sm3);

}

相关推荐
问商十三载11 分钟前
RAG 检索召回越多越好?2026 信噪比模型深度解析
人工智能·算法·机器学习
额恩6612 分钟前
ResearchPilot 第三阶段总结报告
python·算法
Hi李耶24 分钟前
【LeetCode】9-回文数
算法·leetcode·职场和发展
红叶舞24 分钟前
基于线段树的数据结构
数据结构·python·算法
断点之下1 小时前
从“理扑克牌”到“分组优化”——直接插入排序与希尔排序详解
数据结构·算法·排序算法
起个破名想半天了1 小时前
算法与数据结构之DFS深度优先遍历
数据结构·算法·深度优先
李伟_Li慢慢1 小时前
凸包算法
人工智能·算法
徐礼昭|商派软件市场负责人1 小时前
AI Agent 蜂群协作与经验基因化:从单体执行到自组织系统的工程路径
大数据·人工智能·算法·智能体·多agent
来者皆善2 小时前
【位RAW图像处理五】任意位深位图像的中值模糊快速实现及其应用。
图像处理·人工智能·算法
happyprince2 小时前
第三观 · 深刻不忘观 —— AngelSpec 哲学与升华
人工智能·算法