From 04f09e52ffd4681bdfd85e51acd3da0d1280c3d3 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期六, 16 四月 2022 16:07:10 +0800 Subject: [PATCH] bug修复 --- src/main/java/com/yeshi/buwan/util/AESUtil.java | 218 ++++++++++++++++++++++++++---------------------------- 1 files changed, 106 insertions(+), 112 deletions(-) diff --git a/src/main/java/com/yeshi/buwan/util/AESUtil.java b/src/main/java/com/yeshi/buwan/util/AESUtil.java index b6fb18b..ea3e75b 100644 --- a/src/main/java/com/yeshi/buwan/util/AESUtil.java +++ b/src/main/java/com/yeshi/buwan/util/AESUtil.java @@ -1,134 +1,128 @@ package com.yeshi.buwan.util; +import javax.crypto.*; +import javax.crypto.spec.SecretKeySpec; import java.io.UnsupportedEncodingException; import java.security.InvalidKeyException; import java.security.NoSuchAlgorithmException; import java.security.SecureRandom; -import javax.crypto.BadPaddingException; -import javax.crypto.Cipher; -import javax.crypto.IllegalBlockSizeException; -import javax.crypto.KeyGenerator; -import javax.crypto.NoSuchPaddingException; -import javax.crypto.spec.SecretKeySpec; - /** * AES鍔犲瘑瑙e瘑 - * + * * @author Administrator - * */ public class AESUtil { - private final static String KEY = "1234567890123456"; + private final static String KEY = "1234567890123456"; - public static String encrypt(String content) { - try { - // KeyGenerator鎻愪緵瀵圭瓥瀵嗛挜鐢熸垚鍣ㄧ殑鍔熻兘,鏀寔鍚勭绠楁硶 - KeyGenerator kgen = KeyGenerator.getInstance("AES"); - SecureRandom secureRandom = SecureRandom.getInstance("SHA1PRNG"); - secureRandom.setSeed(KEY.getBytes()); - kgen.init(128, secureRandom); - // SecretKey 璐熻矗淇濆瓨瀵圭О瀵嗛挜 - SecretKeySpec key = new SecretKeySpec(KEY.getBytes(), "AES"); + public static String encrypt(String content) { + try { + // KeyGenerator鎻愪緵瀵圭瓥瀵嗛挜鐢熸垚鍣ㄧ殑鍔熻兘,鏀寔鍚勭绠楁硶 + KeyGenerator kgen = KeyGenerator.getInstance("AES"); + SecureRandom secureRandom = SecureRandom.getInstance("SHA1PRNG"); + secureRandom.setSeed(KEY.getBytes()); + kgen.init(128, secureRandom); + // SecretKey 璐熻矗淇濆瓨瀵圭О瀵嗛挜 + SecretKeySpec key = new SecretKeySpec(KEY.getBytes(), "AES"); - // 鍒涘缓瀵嗙爜鍣� - Cipher cipher = Cipher.getInstance("AES"); - byte[] byteContent = content.getBytes("utf-8"); - // 鍒濆鍖� - cipher.init(Cipher.ENCRYPT_MODE, key); - // 鍔犲瘑 - byte[] result = cipher.doFinal(byteContent); - return (new sun.misc.BASE64Encoder()).encode(result); - } catch (NoSuchAlgorithmException e) { - e.printStackTrace(); - } catch (NoSuchPaddingException e) { - e.printStackTrace(); - } catch (InvalidKeyException e) { - e.printStackTrace(); - } catch (UnsupportedEncodingException e) { - e.printStackTrace(); - } catch (IllegalBlockSizeException e) { - e.printStackTrace(); - } catch (BadPaddingException e) { - e.printStackTrace(); - } - return new String(); - } + // 鍒涘缓瀵嗙爜鍣� + Cipher cipher = Cipher.getInstance("AES"); + byte[] byteContent = content.getBytes("utf-8"); + // 鍒濆鍖� + cipher.init(Cipher.ENCRYPT_MODE, key); + // 鍔犲瘑 + byte[] result = cipher.doFinal(byteContent); + return StringUtil.getBase64FromByte(result); + } catch (NoSuchAlgorithmException e) { + e.printStackTrace(); + } catch (NoSuchPaddingException e) { + e.printStackTrace(); + } catch (InvalidKeyException e) { + e.printStackTrace(); + } catch (UnsupportedEncodingException e) { + e.printStackTrace(); + } catch (IllegalBlockSizeException e) { + e.printStackTrace(); + } catch (BadPaddingException e) { + e.printStackTrace(); + } + return new String(); + } - /* - * 娉ㄦ剰锛氳В瀵嗙殑鏃跺�欒浼犲叆byte鏁扮粍 瑙e瘑 - * - * @param content 寰呰В瀵嗗唴瀹� - * - * @param password 瑙e瘑瀵嗛挜 - * - * @return - */ - // public String decrypt(byte[] content, String password) { - public static String decrypt(String contentStr) { - try { - byte[] content = (new sun.misc.BASE64Decoder()).decodeBuffer(contentStr); + /* + * 娉ㄦ剰锛氳В瀵嗙殑鏃跺�欒浼犲叆byte鏁扮粍 瑙e瘑 + * + * @param content 寰呰В瀵嗗唴瀹� + * + * @param password 瑙e瘑瀵嗛挜 + * + * @return + */ + // public String decrypt(byte[] content, String password) { + public static String decrypt(String contentStr) { + try { + byte[] content = (new sun.misc.BASE64Decoder()).decodeBuffer(contentStr); - KeyGenerator kgen = KeyGenerator.getInstance("AES"); - SecureRandom secureRandom = SecureRandom.getInstance("SHA1PRNG"); - secureRandom.setSeed(KEY.getBytes()); - kgen.init(128, secureRandom); + KeyGenerator kgen = KeyGenerator.getInstance("AES"); + SecureRandom secureRandom = SecureRandom.getInstance("SHA1PRNG"); + secureRandom.setSeed(KEY.getBytes()); + kgen.init(128, secureRandom); - SecretKeySpec key = new SecretKeySpec(KEY.getBytes(), "AES"); - // 鍒涘缓瀵嗙爜鍣� - Cipher cipher = Cipher.getInstance("AES"); - // 鍒濆鍖� - cipher.init(Cipher.DECRYPT_MODE, key); - // 鍔犲瘑 - byte[] result = cipher.doFinal(content); - return new String(result); - } catch (NoSuchAlgorithmException e) { - e.printStackTrace(); - } catch (NoSuchPaddingException e) { - e.printStackTrace(); - } catch (InvalidKeyException e) { - e.printStackTrace(); - } catch (IllegalBlockSizeException e) { - e.printStackTrace(); - } catch (BadPaddingException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } - return new String(); - } + SecretKeySpec key = new SecretKeySpec(KEY.getBytes(), "AES"); + // 鍒涘缓瀵嗙爜鍣� + Cipher cipher = Cipher.getInstance("AES"); + // 鍒濆鍖� + cipher.init(Cipher.DECRYPT_MODE, key); + // 鍔犲瘑 + byte[] result = cipher.doFinal(content); + return new String(result); + } catch (NoSuchAlgorithmException e) { + e.printStackTrace(); + } catch (NoSuchPaddingException e) { + e.printStackTrace(); + } catch (InvalidKeyException e) { + e.printStackTrace(); + } catch (IllegalBlockSizeException e) { + e.printStackTrace(); + } catch (BadPaddingException e) { + e.printStackTrace(); + } catch (Exception e) { + e.printStackTrace(); + } + return new String(); + } - public static String decrypt(byte[] contentStr, String k) { - try { - byte[] content = contentStr; - KeyGenerator kgen = KeyGenerator.getInstance("AES"); - SecureRandom secureRandom = SecureRandom.getInstance("SHA1PRNG"); - secureRandom.setSeed(k.getBytes()); - kgen.init(128, secureRandom); + public static String decrypt(byte[] contentStr, String k) { + try { + byte[] content = contentStr; + KeyGenerator kgen = KeyGenerator.getInstance("AES"); + SecureRandom secureRandom = SecureRandom.getInstance("SHA1PRNG"); + secureRandom.setSeed(k.getBytes()); + kgen.init(128, secureRandom); - SecretKeySpec key = new SecretKeySpec(k.getBytes(), "AES"); - // 鍒涘缓瀵嗙爜鍣� - Cipher cipher = Cipher.getInstance("AES"); - // 鍒濆鍖� - cipher.init(Cipher.DECRYPT_MODE, key); - // 鍔犲瘑 - byte[] result = cipher.doFinal(content); - return new String(result, "utf-8"); - } catch (NoSuchAlgorithmException e) { - e.printStackTrace(); - } catch (NoSuchPaddingException e) { - e.printStackTrace(); - } catch (InvalidKeyException e) { - e.printStackTrace(); - } catch (IllegalBlockSizeException e) { - e.printStackTrace(); - } catch (BadPaddingException e) { - e.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - } - return new String(); - } + SecretKeySpec key = new SecretKeySpec(k.getBytes(), "AES"); + // 鍒涘缓瀵嗙爜鍣� + Cipher cipher = Cipher.getInstance("AES"); + // 鍒濆鍖� + cipher.init(Cipher.DECRYPT_MODE, key); + // 鍔犲瘑 + byte[] result = cipher.doFinal(content); + return new String(result, "utf-8"); + } catch (NoSuchAlgorithmException e) { + e.printStackTrace(); + } catch (NoSuchPaddingException e) { + e.printStackTrace(); + } catch (InvalidKeyException e) { + e.printStackTrace(); + } catch (IllegalBlockSizeException e) { + e.printStackTrace(); + } catch (BadPaddingException e) { + e.printStackTrace(); + } catch (Exception e) { + e.printStackTrace(); + } + return new String(); + } } -- Gitblit v1.8.0