1、POM引入
<dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.8.11</version> <!-- 2025年8月最新稳定版 --></dependency><dependency><groupId>org.bouncycastle</groupId><artifactId>bcprov-jdk15on</artifactId><version>1.70</version></dependency>
2、SM4加密、解密应用
static {try {Security.addProvider(new BouncyCastleProvider());} catch (Exception e) {e.printStackTrace();}}/***SM4 加密**/public static String encrypt(String context,String key){SymmetricCrypto sm4Crypto = new SymmetricCrypto("SM4",key.getBytes());String encryptHex = sm4Crypto.encryptHex(context);return encryptHex;}/***SM4 解密**/public static String decrypt(String context,String key){SymmetricCrypto sm4Crypto = new SymmetricCrypto("SM4",key.getBytes());String decryptHex = sm4Crypto.decryptStr(context, CharsetUtil.CHARSET_UTF_8);return decryptHex;}public static void main(String[] args) {String context = "大鹏一日同风起,扶摇直上九万里。King....Peng";String key = "KmKmyuF7OJFVn2uB";String encryptHex = encrypt(context,key);System.out.println("加密后:"+encryptHex);String decryptHex = decrypt(encryptHex,key);System.out.println("解密后:"+decryptHex);}
执行结果:
