package com.tydic.common.utils; import javax.crypto.Cipher; import javax.crypto.spec.IvParameterSpec; import javax.crypto.spec.SecretKeySpec; import org.apache.commons.codec.binary.Base64; /* * AES加解密算法 * * @author jueyue * 加密用的Key 可以用26个字母和数字组成,最好不要用保留字符,虽然不会错,至于怎么裁决,个人看情况而定 此处使用AES-128-CBC加密模式,key需要为16位。 也是使用0102030405060708 */ public class AES { // 加密 public static String Encrypt(String sSrc, String sKey) throws Exception { if (sKey == null) { System.out.print("Key为空null"); return null; } // 判断Key是否为16位 if (sKey.length() != 16) { System.out.print("Key长度不是16位"); return null; } byte[] raw = sKey.getBytes(); SecretKeySpec skeySpec = new SecretKeySpec(raw, "AES"); Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5Padding");//"算法/模式/补码方式" IvParameterSpec iv = new IvParameterSpec("0102030405060708".getBytes());//使用CBC模式,需要一个向量iv,可增加加密算法的强度 cipher.init(Cipher.ENCRYPT_MODE, skeySpec, iv); byte[] encrypted = cipher.doFinal(sSrc.getBytes()); return Base64.encodeBase64String(encrypted);//此处使用BAES64做转码功能,同时能起到2次加密的作用。 } // 解密 public static String Decrypt(String sSrc, String sKey) throws Exception { try { // 判断Key是否正确 if (sKey == null) { System.out.print("Key为空null"); return null; } // 判断Key是否为16位 if (sKey.length() != 16) { System.out.print("Key长度不是16位"); return null; } byte[] raw = sKey.getBytes("ASCII"); SecretKeySpec skeySpec = new SecretKeySpec(raw, "AES"); Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5Padding"); IvParameterSpec iv = new IvParameterSpec("0102030405060708" .getBytes()); cipher.init(Cipher.DECRYPT_MODE, skeySpec, iv); byte[] encrypted1 = Base64.decodeBase64(sSrc);//先用bAES64解密 try { byte[] original = cipher.doFinal(encrypted1); String originalString = new String(original); return originalString; } catch (Exception e) { System.out.println(e.toString()); return null; } } catch (Exception ex) { System.out.println(ex.toString()); return null; } } }
2022-05-18 23:19:29 340KB org.apache.commo
1
apache-phoenix-4.14.0-HBase-1.2-src.tar.gz 。。。。。。
2022-05-18 21:20:11 3.81MB phoenix-4.14 apache-phoen phoenix
1
bea workshop 10 破解版14
2022-05-18 20:48:29 18MB bea workshop 10 破解版
1
机器学习与算法源代码14: 智能推荐系统.zip
2022-05-18 19:08:09 9.31MB 机器学习 算法 源码软件 人工智能
14.打印机图标设计UI教程.pdf
2022-05-18 19:04:36 9.79MB ui设计
(14条消息) 1+X Web前端等级考证 _ 2020 12月Web前端开发中级实操 (模拟试题第五套) 附答案_李猫er-CSDN博客.mhtml
2022-05-18 16:44:11 6.79MB
1
haproxy-1.8.14 windows 带运行库 不要双击运行,减压到本地以后,才可以用 自己用Cygwin64 Terminal编译的,这个是64位版本
2022-05-18 10:01:20 4.45MB haproxy
1
DP (高清136MB pdf完整版) 仅供试看之用,请24小时内删除, 这是一本好书, 大家买一本收藏是很值得的 其中1-3章是非扫描版本,其他章节是扫描版本 15个压缩包下载到同一目录解压
2022-05-17 15:53:26 9MB pdf 设计模式
1
教程名称:Windows Server 2008系列视频教程(14集)课程目录:【】第1章安装Windows 2008【】第2章配置Win Server2008 环境【】第3章 管理本地用户和组【】第4章 创建域环境【】第5章 利用NTFS管理数据【】第6章 配置文件服务器【】第7章 监控服务器性能【】第8章 配置系统 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。
1
案例14 SVM神经网络的回归预测分析---上证开盘指数预测.7z
2022-05-15 18:00:53 156KB 支持向量机 神经网络 回归 文档资料