MySQl数据库加密解密

待加密字段varchar
INSERT INTO  base_info(id,school_db_host) VALUES('1111254',HEX(AES_ENCRYPT(('要加密的'),'coco') )); SELECT AES_DECRYPT(UNHEX(school_db_host), 'coco') FROM base_info;
待加密字段varbinary
INSERT INTO  base_info(id,school_db_host) VALUES('111254',AES_ENCRYPT(('要加密的'),'coco')); SELECT AES_DECRYPT(school_db_host, 'coco') FROM base_info;

Java代码加密解密配合使用


import java.io.UnsupportedEncodingException;import javax.crypto.Cipher;
import javax.crypto.spec.SecretKeySpec;import org.apache.commons.codec.binary.Hex;
/**通常mysql中AES加密,和java中不一致,* 也就是说mysql中AES加密的东西,copy出来,* 用java代码不能解密* 下面大佬就来秀一波操作* */
public class AESUtil {/**加密的Key*/private static String  AESKEY = "zhfw_700";/**同意是用的编码*/private static String AESCODE  = "UTF-8";public static SecretKeySpec generateMySQLAESKey(final String key, final String encoding) {try {final byte[] finalKey = new byte[16];int i = 0;for(byte b : key.getBytes(encoding))finalKey[i++%16] ^= b;          return new SecretKeySpec(finalKey, "AES");} catch(UnsupportedEncodingException e) {throw new RuntimeException(e);}}/**AES 解密* data : 待解密的数据 * */public static String decrpt(String data)  throws Exception {// Decryptfinal Cipher decryptCipher = Cipher.getInstance("AES");                         decryptCipher.init(Cipher.DECRYPT_MODE, generateMySQLAESKey(AESKEY, AESCODE));return new String(decryptCipher.doFinal(Hex.decodeHex(data.toCharArray())));}/**AES加密* data : 待加密 的数据 * */public static String encrpt(String data)  throws Exception {// Encryptfinal Cipher encryptCipher = Cipher.getInstance("AES");                         encryptCipher.init(Cipher.ENCRYPT_MODE, generateMySQLAESKey(AESKEY, AESCODE));       char[] code=  Hex.encodeHex(encryptCipher.doFinal(data.getBytes(AESCODE)));StringBuilder builder = new StringBuilder();for(char d:code) {builder.append(d);}String strning = builder.toString();return strning;}public static void main(String... args) throws Exception {// Decrypt
//        final Cipher decryptCipher = Cipher.getInstance("AES");
//        decryptCipher.init(Cipher.DECRYPT_MODE, generateMySQLAESKey("coco", "UTF-8"));
//        System.out.println(new String(decryptCipher.doFinal(Hex.decodeHex("d1314e21a741b85e00fb975529a217ac98fab03b6fca017c0a6bf1cd621ef7ae".toCharArray()))));// Encrypt
//        final Cipher encryptCipher = Cipher.getInstance("AES");
//        encryptCipher.init(Cipher.ENCRYPT_MODE, generateMySQLAESKey("coco", "UTF-8"));
//        System.out.println(Hex.encodeHex(encryptCipher.doFinal("要加密的".getBytes("UTF-8"))));System.out.println(encrpt("要加密的")); //加密 System.out.println(decrpt(encrpt("要加密的"))); //解密 加密的数据}
}

MySQl数据库使用AES加密解密配Java代码使用相关推荐

  1. AES加密解密(java、web、app)

    AES加密解密(java.web.app) AES加密解密(java.web.app) java端 Web端 ios端 AES加密解密(java.web.app) java端 package com. ...

  2. AES加密解密算法Java实现

    AES加密算法是密码学中的高级加密标准(Advanced Encryption Standard,AES),又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准.这个标准用来替代原先的DE ...

  3. aes加密算法python语言实现_C#, Java, PHP, Python和Javascript几种语言的AES加密解密实现[转载]...

    原文:http://outofmemory.cn/code-snippet/35524/AES-with-javascript-java-csharp-python-or-php c#里面的AES加密 ...

  4. python 加密解密_python实现AES加密解密

    本文实例为大家分享了python实现AES加密解密的具体代码,供大家参考,具体内容如下 (1)对于AES加密解密相关知识 (2)实现的功能就是输入0-16个字符,然后经过AES的加密解密最后可以得到原 ...

  5. java php aes加密解密_php aes 加密解密可与java对接

    php aes 加密解密可与java对接 博主:liu1693 发表时间:2017-02-23 16:52:27 浏览量:100 class Encrypt{ //加密方法 public static ...

  6. ios java aes_PHP7 AES加密解密函数_兼容ios/andriod/java对等加解密

    **PHP7.0 7.1 7.2 7.3 AES对等加解密类 函数文件_兼容ios/andriod/java等** 由于新项目规划要求使用PHP7.2开发环境,但在部分新系统中仍需使用AES加解密方式 ...

  7. JAVA与PHP之间进行aes加密解密

    aes加密解密过程 用户数据应经过加密再传输,此文档为aes128加密(cbc模式)的说明 摘要算法为SHA-512 加密: 生成16位iv向量,使用该iv以及密钥加密原文 将加密后的真实密文与iv拼 ...

  8. Java AES 加密解密工具类

    maven 引入一个依赖 <!-- https://mvnrepository.com/artifact/commons-codec/commons-codec --> <depen ...

  9. MySQL自带的AES加密解密比较常用的使用方法

    接手的老项目中,有些SQL使用了MySQL自带的AES加密解密,为了方便操作数据,研究了一下使用方法,在这里记录一下. 加密 update user_password set password = H ...

最新文章

  1. CREATE TABLESPACE
  2. SQL基础--完整性约束
  3. cmake教程(为什么要用cmake?)(cmake编译opencv)(就是个跨平台的编译工具Linux、windows)(很重要,必须得学)(报错解决方案)opencv编译
  4. php清空dns缓存文件,dns清空-windows刷新本地DNS缓存的几种方法
  5. android自定义图标下载,charts
  6. 解决导出word迅雷读取地址和下载出错
  7. 11.1.1 认识StringBuffer类(1)
  8. synctoy 自动同步_用SyncToy给硬盘备份保证数据安全,来自微软的馅饼真香
  9. grasshop 犀牛5.0下载_神契幻奇谭 v1.129版发布 快来下载神契幻奇谭2020最新官方版...
  10. unity 2d文字跟随主角移动_用Unity制作GalGame/视觉小说游戏的模型素材与插件推荐...
  11. 哪种云计算机能玩游戏,低配置电脑的福音,体验腾讯START云游戏:只要有网就能玩这几个游戏,除了Mac版还有Win版!...
  12. json嵌套字典数据获取
  13. python刷网易云_Python脚本用于定时关闭网易云音乐PC客户端
  14. 学法减分拍照识题小程序开发
  15. Niushop单商户V4版强大的系统功能震撼来袭
  16. 什么是互动触摸屏?它有用途是什么?
  17. hander机制原理
  18. UI设计规范有哪些?| 萧蕊冰
  19. 改纸盒大小_如何DIY纸盒人图解教程(含各细节详细尺寸)
  20. 鲜为人知的PCB抄板常识,您了解多少?

热门文章

  1. 自动控制原理模拟卷5
  2. 哪些网站可以发外链?分享几十个个可以发外链的网站
  3. oracle jdbc驱动 ojdbc14-10.2.0.4.0.jar 网盘下载
  4. 什么是Wifi无线网络?
  5. Google Chrome及ChromeDriver版本参照表, 附带下载地址
  6. 数据分析与爬虫实战视频——学习笔记(一)(python基础、urllib、超时设置、自动模拟HTTP请求、异常处理、浏览器伪装、代理服务器、新闻爬虫、淘宝登陆和图片爬取)
  7. 项目“天天动听”测试用例
  8. python+vue 健康体检预约管理系统
  9. ipad上pythonista_[Pythonista] iPad 上很酷的 Python 開發環境 – 炎龍老師的 blog
  10. [渝粤教育] 四川农业大学 地理信息系统原理A 参考 资料