Java聚合对外网关,使用国密SM4采用CBC分组填充模式实现数据加密工具类,Jmeter压测

文章介绍了如何在Java项目中使用国密SM4算法,配合CBC模式进行加密和解密,使用Base64编码资源对象,以及提供的工具类实现和测试案例。

添加依赖配置

		<!-- 仓库地址: https://mvnrepository.com/artifact/commons-codec/commons-codec -->
		<!--	org.apache.commons.codec.binary.Base64	-->
		<dependency>
			<groupId>commons-codec</groupId>
			<artifactId>commons-codec</artifactId>
			<version>1.15</version>
		</dependency>

		<!-- 国密 sm4 依赖jar包 -->
		<dependency>
			<groupId>org.bouncycastle</groupId>
			<artifactId>bcprov-jdk15on</artifactId>
			<version>1.68</version>
		</dependency>

国密SM4并采用CBC分组填充模式,密钥长度为16字节。nonce为16字节,加密使用的nonce和加签一致。
1、密钥为提供提供,nonce为请求中随机生成的字符串
2、使用nonce作为iv
3、使用key、iv,对敏感数据进行加密,得到JSON形式的资源对象
4、对JSON形式的资源对象进行 Base64 编码

工具类实现,如下代码对iv赋值做了简写,可结合自身需要修改:

import com.alibaba.fastjson2.JSON;
import com.risk.decision.params.ConfirmParams;
import org.apach
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值