使用alibaba的运行druid-1.1.9.jar进行数据加密、踩坑及解决方案

1.首先运行win+r,并输入cmd命令,打开控制台,并找到存在druid-1.1.9.jar的目录下,此处使用的是druid的1.1.9版本,如下图:

 

2. 运行 java -cp druid-1.1.9.jar com.alibaba.druid.filter.config.ConfigTools 需要加密的密码 ,加密密码为: 6DfVweXp'^'oF       加密后如下图所示

此处会生成

--私钥
privateKey:MIIBVQIBADANBgkqhkiG9w0BAQEFAASCAT8wggE7AgEAAkEAymIx8YkzZN4SS6+M33YzP4iQ3NpcbGtU93CjoEeeHLlwtrKeXLTZFrfIml6Q2lV2mp2ZYvDGMAxgNLbRioJrQIDAQABAkEAtKvYvjGnieKeHqcHce5JbexytlbRr5BZ99O8nzeQNT7YmXVwckKXyayk1C6D807hm/c4vNHcRYFFeTjwvvoUwQIhAOi8fjkwM2Pqjfo8TYrIBqIFG8AVXnUXAe6jL5SsZnw1AiEA3p0A+S0WZfWOu1yjhs8mFl5Uqy5yc8VsRDzQgJhwVpkCIBXzOSBhqGcjBxLzvwh4xw9e1fguy8LVUaxVHbay79OFAiEAngp6yWwADcyiU1P2aFuiH5lCpPDpolVTgrJmGBWhE2kCIHpxyC8k6e4g9Nk2lgOFtTu2iC4Pof/rHp+G1HJzwGVw

--公钥
publicKey:MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAMpiMfGJM2TeEkuvjN92Mz+IkNzaXGxrVPdwo6BHnhy5cLaynly02fha3yJpekNpVdpqdmWLwxjAMYDS20YqCa0CAwEAAQ==

--加密后的密码
password:Ncn+kRIQUnES5cPi38S0SRGaRwERBjmWOXG0gLBft/ndBeTXkOPjO/Q9C6CUD6kBbZBFqO3+XgQ8mdDOtWgr/w==

3.这算是运用druid加密数据库密码成功了,但是你会发现当你把公钥和加密的后的密码配置到你的程序中,你的程序会连接不上数据库,并会报错,如  Access denied for user 'root'@'localhost' (using password: YES)  ,数据库连接错误码: errorCode 1045, state 28000 ,查找原因是数据库连接密码错误。

运行解密代码会发现,解密后密码不存在  ^  这种特殊字符, 如下图:

本人经验有限,在所认知当中有两种解决方式:

第一种方案:最直接的方式更改含有 ^ 这种字符的数据库密码。

更改密码为 5Ffweg%ferDad 进行加密,如下图

结果如下:

第二种方案:在进行加密时,把密码中有特殊字符加上双引号  如: 6DfVweXp"^"oF

运行命令后如图:

进行解密后是原来密码,如图所示:

然后再把加密后的密码配置到程序中,程序启动成功。

展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客
应支付0元
点击重新获取
扫码支付

支付成功即可阅读