微信小程序java实现AES解密并获取unionId
来源:互联网 发布:淘宝名鞋库 编辑:程序博客网 时间:2024/05/16 08:02
import org.apache.commons.codec.binary.Base64;import org.bouncycastle.jce.provider.BouncyCastleProvider;import javax.crypto.BadPaddingException;import javax.crypto.Cipher;import javax.crypto.IllegalBlockSizeException;import javax.crypto.NoSuchPaddingException;import javax.crypto.spec.IvParameterSpec;import javax.crypto.spec.SecretKeySpec;import java.security.*;public class AES { public static boolean initialized = false; /** * AES解密 * @param content 密文 * @return * @throws InvalidAlgorithmParameterException * @throws NoSuchProviderException */ public byte[] decrypt(byte[] content, byte[] keyByte, byte[] ivByte) throws InvalidAlgorithmParameterException { initialize(); try { Cipher cipher = Cipher.getInstance("AES/CBC/PKCS7Padding"); Key sKeySpec = new SecretKeySpec(keyByte, "AES"); cipher.init(Cipher.DECRYPT_MODE, sKeySpec, generateIV(ivByte));// 初始化 byte[] result = cipher.doFinal(content); return 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 (NoSuchProviderException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } return null; } public static void initialize(){ if (initialized) return; Security.addProvider(new BouncyCastleProvider()); initialized = true; } //生成iv public static AlgorithmParameters generateIV(byte[] iv) throws Exception{ AlgorithmParameters params = AlgorithmParameters.getInstance("AES"); params.init(new IvParameterSpec(iv)); return params;
1 0
- 原创:微信小程序java实现AES解密并获取unionId
- 微信小程序java实现AES解密并获取unionId
- 原创:微信小程序java实现AES解密并获取unionId
- 微信小程序之获取并解密用户数据(获取openId、unionId)
- Java实现的AES加解密程序
- java微信小程序解密AES/CBC/PKCS7Padding
- 微信小程序——获取用户unionId
- 详解微信小程序 登录获取unionid
- 微信小程序——获取用户unionId
- 关于微信小程序获取unionid的问题
- Java实现AES加密解密
- java实现AES加密解密
- AES加密解密->java实现
- Java实现AES加密解密
- java实现AES加密解密
- Java实现AES加密解密
- Java实现AES加解密
- java加密解密AES实现
- 无线随机运动-原生JS详解
- youcompleteme unavailable: no module named "future"解决
- 全网服务器数据备份解决方案
- 【OpenJudge】配对碱基链
- MySQL Group Replication调研剖析
- 微信小程序java实现AES解密并获取unionId
- 简单Demo让你分分钟理解Android中的文件存储
- Luogu P1102 A-B数对+map
- Manipulator explore
- 【剑指offer】面试题39-二叉树的深度
- 【OpenJudge】寻找山顶
- 每天10个前端知识点:各种宽高距离篇
- python3.6 mysql-connector-python 2.2.2
- SCUT ACM PLACTICE # 3 二进制枚举,深搜,广搜