今天爱分享给大家带来druid 数据库密码加解密方法【图文详解】,希望能够帮助到大家。
密码安全越来越重要,尤其是数据库的密码,所以非常有必要进行加密,druid从1.0.16版本就开始使用非对称加密方式,需要公私钥
这里就只考虑druid 1.0.16版本之后的加解密
准备环境,java 环境和 druid 的jar包
方法一
运行cmd 窗口,进入下面路径
然后输入下面的命令,注意版本号对应,以密码123456为例
java -cp druid-1.1.9.jar com.alibaba.druid.filter.config.ConfigTools 123456
方法二
import com.alibaba.druid.filter.config.ConfigTools; import com.alibaba.druid.util.DruidPasswordCallback; /** * ClassName: DruidPasswordUtil * Version: 1.0 * Description: druid 加密解密 */ public class DruidPasswordUtil extends DruidPasswordCallback { public static void main(String[] args) throws Exception{ //密码明文 String password = "123456"; //获取公私钥 String [] keyPair = ConfigTools.genKeyPair(512); String privateKey = keyPair[0]; String publicKey = keyPair[1]; System.out.println("privateKey:"+privateKey); System.out.println("publicKey:"+publicKey); //用私钥加密后的密文 password = ConfigTools.encrypt(privateKey, password); System.out.println("私钥加密后===:"+password); //用公钥加密后的密文 String decryptPassword=ConfigTools.decrypt(publicKey, password); System.out.println("公钥解密后===:"+decryptPassword); } }
最后
最后把加密后的密文配置到配置文件中 application.properties
jdbc.datasource.password=JaXheKJloV/fhaVNESbXz97MdvucFsfcgm/I1E1Y4PWkNocw1Grr7hYFV4An1ZfLFJ6LODUM+zPtRVJpFzg3nQ== jdbc.publickey=MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAMThZD/2Qj9GN/Z7g/1SMIuRmZAKXddEwmc8ovM2kMS/0TIZr+jYiacL9VFEMuOp55qHn45Ue2Wi6njcPYaKfH8CAwEAAQ==