IntelligentRecognition/ah-jjsp-service/.svn/pristine/d9/d9931f1d5d47a88d0b5fc3ccafd...

118 lines
6.5 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package com.sercurityControl.proteam.util;
import javax.crypto.Cipher;
import javax.crypto.KeyGenerator;
import javax.crypto.spec.SecretKeySpec;
import org.apache.commons.codec.binary.Base64;
/**
* 前后端数据传输加密工具类
* @author zyk
*
*/
public class AesEncryptUtils {
//可配置到Constant中并读取配置文件注入,16位,自己定义
public static final String KEY_NAME = "jjqgcjjqgcjijian";
public static final String VIDEO_KEY = "297796CCB81D2553";
//参数分别代表 算法名称/加密模式/数据填充方式
public static final String ALGORITHMSTR = "AES/ECB/PKCS5Padding";
/**
* 加密
* @param content 加密的字符串
* @param encryptKey key值
* @return
* @throws Exception
*/
public static String encrypt(String content, String encryptKey) {
try{
KeyGenerator kgen = KeyGenerator.getInstance("AES");
kgen.init(128);
Cipher cipher = Cipher.getInstance(ALGORITHMSTR);
cipher.init(Cipher.ENCRYPT_MODE, new SecretKeySpec(encryptKey.getBytes(), "AES"));
byte[] b = cipher.doFinal(content.getBytes("utf-8"));
// 采用base64算法进行转码,避免出现中文乱码
return Base64.encodeBase64String(b);
}catch (Exception e){
}
return null;
}
/**
* 解密
* @param encryptStr 解密的字符串
* @param decryptKey 解密的key值
* @return
* @throws Exception
*/
public static String decrypt(String encryptStr, String decryptKey) {
try{
KeyGenerator kgen = KeyGenerator.getInstance("AES");
kgen.init(128);
Cipher cipher = Cipher.getInstance(ALGORITHMSTR);
cipher.init(Cipher.DECRYPT_MODE, new SecretKeySpec(decryptKey.getBytes(), "AES"));
// new String(aesDecrypt(Base64.decode(ciphertext),Base64.decode(key)),"UTF-8");
// new String(aesDecrypt(Base64.decode(ciphertext),Base64.decode(key)));
// 采用base64算法进行转码,避免出现中文乱码
byte[] encryptBytes = Base64.decodeBase64(encryptStr);
byte[] decryptBytes = cipher.doFinal(encryptBytes);
return new String(decryptBytes,"UTF-8");
}catch (Exception e){
}
return null;
}
public static String encrypt(String content) throws Exception {
return encrypt(content, KEY_NAME);
}
public static String decrypt(String encryptStr) throws Exception {
return decrypt(encryptStr, KEY_NAME);
}
public static void main(String[] args) {
// String str="address=10.138.219.3&port=29988&user=bns4&epid=system&password=Bns@2023**&fixaddr=0";
// String rucan = encrypt(str, VIDEO_KEY);
// System.out.println("加密后:" + rucan);
// String mm="hc5iBaDAmyS8GHAN9mG6TSr3pInVxpRfOEfqFKdmy8OyJ4P3yJe5t92kVPKogs4JGFdr7iyNTP+Pg4o3v3o0Rh1ltCLnEwV5TyVXEueOrSg=";
// System.out.println("加密后:" + mm);
// String data= decrypt(rucan,VIDEO_KEY);
// System.out.println("解密后:" + data);;
String jm = encrypt("{" +
"\"macId\":\"8F1263E0-B4\"" +
"}", KEY_NAME);
String data= decrypt("3qO06ijUcELmiJgymXD3CZuSDdee1jjodaKXJ3/+I8Kn5G/Y76OkFamL/xk7Oi3dTWYzvjY/swikOHmcLhYZoIs6qSCiBgItGaqwgxgXEFu7Apv8bC3DBIzHA2nMWf++Rg9mtqL2tq2fvebMYCIwczQyzok1VGVYA+poKGXfz+EYiE/CUYtU4ZPvozfF73ionUrnlD28vkuah0Yn0H7LhiVkNSnhWhVUDQtqf/GY/nuj1llIp6NHiw/J2FELUOX21a3loe/0RIQhi+R4E+aHb9L7a6nqLLL/BaLGo38JvU/jqRjXWa3Sorafxqs0yQwdu1BLtM+O+LwU9SJaZDSZX6iV58GBxnfAOi4qLEtTjtwp3/K5/ulo8yA2WMs+EPHBjJfzCUnWHL2+zt4s0myN9172j0ttzderhSTwOKv9wEipoQHccyyUq6Khv7Nc8c+ogwVlsYwfxbcjqTdxq5Y01mxxJKYi3T9KrwZoHYn34MBYMF0cdmFOgbe+6mWfRflyX0ASrJNSoIuKI2eLqoxU8NvzRxzadMYB1cSbe7VSqTBfQm3ONg/YPoGPUkFsJtpsIO1zVgiO0186S4y8M1yfEvFMKvz4Bhum/0F5p+W50B3p/UO+UjeCnPVXXq5iyR+A+2Ls+56NzcwDinUKLE62AyJCA0jh0FZ1S+25dbELimKqtTAdSifhLiy8DDROxlVj3jtMODF3ddSH4Di14vtN7Lk6bu1uQFl41ATLBbqygQBk3Sjql+tuhMC6sTkUTmJxw21e0P3fAXc28Z0eiAmEJa2BU5b+ZfjFAzJpr0Dqi9G0/IPl6gdjMcpuR6Bl9iQtSfkqTW5FyVsOXsFqZe75JdA44b5Uyfa4NYkduI0FxMen5G/Y76OkFamL/xk7Oi3dTWYzvjY/swikOHmcLhYZoIs6qSCiBgItGaqwgxgXEFtWTYG22ds5jQZ+6aOlNzXntKpmgzIzZq3skI+VeOGfOTQyzok1VGVYA+poKGXfz+EYiE/CUYtU4ZPvozfF73ionUrnlD28vkuah0Yn0H7LhiVkNSnhWhVUDQtqf/GY/nuj1llIp6NHiw/J2FELUOX21a3loe/0RIQhi+R4E+aHb9L7a6nqLLL/BaLGo38JvU/jqRjXWa3Sorafxqs0yQwdM6jRUCTVfFocwv9TWYiKDnW/XxOguSOLWLser021Clcp3/K5/ulo8yA2WMs+EPHBjJfzCUnWHL2+zt4s0myN9172j0ttzderhSTwOKv9wEipoQHccyyUq6Khv7Nc8c+ogwVlsYwfxbcjqTdxq5Y01mxxJKYi3T9KrwZoHYn34MBYMF0cdmFOgbe+6mWfRflyX0ASrJNSoIuKI2eLqoxU8KoiNDfMbGlLkcaqqNTAB85fQm3ONg/YPoGPUkFsJtpsIO1zVgiO0186S4y8M1yfEvFMKvz4Bhum/0F5p+W50B3p/UO+UjeCnPVXXq5iyR+A+2Ls+56NzcwDinUKLE62AyJCA0jh0FZ1S+25dbELimKqtTAdSifhLiy8DDROxlVj3jtMODF3ddSH4Di14vtN7Lk6bu1uQFl41ATLBbqygQAFnDR8WOF6/IdRlTSrlI13w21e0P3fAXc28Z0eiAmEJa2BU5b+ZfjFAzJpr0Dqi9G0/IPl6gdjMcpuR6Bl9iQtSfkqTW5FyVsOXsFqZe75JdA44b5Uyfa4NYkduI0FxMen5G/Y76OkFamL/xk7Oi3dTWYzvjY/swikOHmcLhYZoIs6qSCiBgItGaqwgxgXEFttIZiEJtYjPV7N0NXhkr5f4rC2t8nP2bVoxZYuXA6OzzQyzok1VGVYA+poKGXfz+EYiE/CUYtU4ZPvozfF73ionUrnlD28vkuah0Yn0H7LhiVkNSnhWhVUDQtqf/GY/nuj1llIp6NHiw/J2FELUOX21a3loe/0RIQhi+R4E+aHb9L7a6nqLLL/BaLGo38JvU/jqRjXWa3Sorafxqs0yQwdMxc05tXFuIfd6BO/moGcs9yQHM2jnW9XNK5hs4UMEM4p3/K5/ulo8yA2WMs+EPHBjJfzCUnWHL2+zt4s0myN9172j0ttzderhSTwOKv9wEipoQHccyyUq6Khv7Nc8c+ogwVlsYwfxbcjqTdxq5Y01mxxJKYi3T9KrwZoHYn34MBYMF0cdmFOgbe+6mWfRflyX0ASrJNSoIuKI2eLqoxU8J9elyJurALMgOm7cG3/LaJfQm3ONg/YPoGPUkFsJtpsIO1zVgiO0186S4y8M1yfEvFMKvz4Bhum/0F5p+W50B3p/UO+UjeCnPVXXq5iyR+A+2Ls+56NzcwDinUKLE62A+Z7drenJAhJSiKwlnX28J4=",KEY_NAME);
System.out.println("解密后:" + data);;
System.out.println("加密后:" + jm);
String jm2 = encrypt("8F1263E0-B4", KEY_NAME);
System.out.println("加密后:" + jm2);
}
// public static void main(String[] args) throws Exception {
// String in = "{\"date\":\"2022-05-06\"}";
// String rucan = encrypt("8F12497A-20", KEY_NAME);
// System.out.println("加密后:" + rucan);
// String out = "3qO06ijUcELmiJgymXD3CbVPiwD1+MGTxWRoC3TWm1CsTsij5kzq82tqAZelfJNqhDnk7MVfHZhgRVpkmU1U81mEemNrt4wVhte3mHbZpqOCHBmgWewBZdi3Vwpa9nYsMccJ5MVDBOYIuzORqx9R9uMzGN2vu78piAVxadJbXPjjtjJ0ybUJUZNiK2pqcPILNNUgoHO/fncy8Vj507uwqG/0DLNe7/9217FtwTyk3QbmjuqxYPzxFJjwbN0h3fjfkxQFNhnFDf22VGNBzPnpjeOOjY9/bRMxZn/CGZ6+UEI=";
// String chucan = decrypt(out, KEY_NAME);
// String jm = encrypt(chucan, KEY_NAME);
// System.out.println("加密后:" + out);
// System.out.println("加密后:" + jm);
// System.out.println("解密后:" + chucan);
// }
//
}