mysql的aes加密算法查询_java mysql 通用aes加密算法
importjavax.crypto.Cipher;importjavax.crypto.spec.SecretKeySpec;importsun.misc.BASE64Decoder;importsun.misc.BASE64Encoder;/*** java使用AES加密解密 AES-128-ECB加密
* 与mysql数据库aes加密算法通用
* 数据库aes加密解密
* -- 加密
* SELECT to_base64(AES_ENCRYPT('www.gowhere.so','jkl;POIU1234++=='));
* -- 解密
* SELECT AES_DECRYPT(from_base64('Oa1NPBSarXrPH8wqSRhh3g=='),'jkl;POIU1234++==');
*@author836508
**/
public classMyAESUtil {//加密
public static String Encrypt(String sSrc, String sKey) throwsException {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("utf-8");
SecretKeySpec skeySpec= new SecretKeySpec(raw, "AES");
Cipher cipher= Cipher.getInstance("AES/ECB/PKCS5Padding");//"算法/模式/补码方式"
cipher.init(Cipher.ENCRYPT_MODE, skeySpec);byte[] encrypted = cipher.doFinal(sSrc.getBytes("utf-8"));return new BASE64Encoder().encode(encrypted);//此处使用BASE64做转码功能,同时能起到2次加密的作用。
}//解密
public static String Decrypt(String sSrc, String sKey) throwsException {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("utf-8");
SecretKeySpec skeySpec= new SecretKeySpec(raw, "AES");
Cipher cipher= Cipher.getInstance("AES/ECB/PKCS5Padding");
cipher.init(Cipher.DECRYPT_MODE, skeySpec);byte[] encrypted1 = new BASE64Decoder().decodeBuffer(sSrc);//先用base64解密
try{byte[] original =cipher.doFinal(encrypted1);
String originalString= new String(original,"utf-8");returnoriginalString;
}catch(Exception e) {
System.out.println(e.toString());return null;
}
}catch(Exception ex) {
System.out.println(ex.toString());return null;
}
}public static void main(String[] args) throwsException {/** 此处使用AES-128-ECB加密模式,key需要为16位。*/String cKey= "jkl;POIU1234++==";//需要加密的字串
String cSrc = "www.gowhere.so";
System.out.println(cSrc);//加密
String enString =MyAESUtil.Encrypt(cSrc, cKey);
System.out.println("加密后的字串是:" +enString);//解密
String DeString =MyAESUtil.Decrypt(enString, cKey);
System.out.println("解密后的字串是:" +DeString);
}
}
mysql的aes加密算法查询_java mysql 通用aes加密算法相关推荐
- java aes 工具类_Java中的AES加解密工具类:AESUtils
本人手写已测试,大家可以参考使用 package com.mirana.frame.utils.encrypt; import com.mirana.frame.constants.SysConsta ...
- mysql与java的计算效率_java mysql数据库查询效率问题
主要实现的功能是事先通过条件筛选一部分id出来,在通过遍历这些id找到相应的Bfinalstatement,存为对象,放入list,但是发现数据量才达到1000时(1000个Bfinalstateme ...
- mysql 约束0怎么设计_java mysql约束与设计
回忆上周知识 mysql约束与设计 DDL:操作数据库和表 drop alter create DML:增删改数据库表的记录 insert update delete DQL:查询表中记录 selec ...
- mysql重连服务器失败_java – MySQL连接器错误“服务器时区值中...
参见英文答案 > The server time zone value 'AEST' is unrecognized or represents more than one time zone? ...
- mysql 单表 子查询_MySQL基本SQL语句之单表查询、多表查询和子查询 | 旺旺知识库...
一.简单查询: 基本语法: SELECT * FROM tb_name;查询全部 SELECT field1,field2 FROM tb_name; 投影 SELECT [DISTINCT] * F ...
- mysql 单表子查询语句_MySQL基本SQL查询语句:多表查询和子查询示例
一.简单查询:基本语法: 代码如下 SELECT * FROM tb_name; 查询全部 代码如下 SELECT field1,field2 FROM tb_name; 投影 代码如下 SELECT ...
- mysql 子表 关联查询语句_MySQL基本SQL语句之单表查询、多表查询和子查询
一.简单查询: 基本语法:SELECT * FROM tb_name;查询全部 SELECT field1,field2 FROM tb_name; 投影 SELECT [DISTINCT] * FR ...
- mysql 存储过程 输出warning_如何抑制MySQL存储过程的输出?
要取消MySQL存储过程的输出,可以使用变量.让我们首先创建一个表.mysql> create table person_information -> ( -> Id int, -& ...
- java mysql语句_java mysql查询语句怎么写
展开全部 1:使用SHOW语句找出在服务器上当前存在什么数据32313133353236313431303231363533e4b893e5b19e31333363373766库: mysql> ...
最新文章
- 观百工堰竹筏竞技比赛有感
- LINQ系列:LINQ to ADO.NET概述
- linux内核重要结构体,Linux中list_head结构体相关 | 技术部落
- 武汉理工计算机学院分数线,武汉理工今年计算机分数线
- transformer中attention计算方式_Transformer在推荐模型中的应用总结
- [转载] python改写二分搜索算法_二分搜索算法模板python实现
- Ta还没有分享呢,过段时间再来看看吧~ 解决办法
- Web浏览器测试,怎么提取测试点 - web测试方法总结
- python启动方法_python启动服务
- HTML5网页中的链接
- 滴滴是互联网届“最失败的垄断者”?
- 用微笑面对一切令你烦恼的人或事,不久之后,你会发现令你微笑的人或事变得越来越多了。
- 2022年执法资格通用法律知识考试判断题专项训练题及答案
- Vue3 + elementplus 分页组件英文改为中文
- RGB接口和MPU接口区别
- 深入理解java多态没有烤山药的存在,java就不香了吗?
- 在SQL SERVER 2000中实行简繁体转换
- SimpleDateFormat格式
- php 配置 memcache,php如何配置memcache
- 用python计算标普500期权的持有至到期delta对冲收益,参考Bakish(2003)