Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

使用ConfigFilter进行数据库密码加密是不是还是不安全 #960

Open
zhangyq1011 opened this issue Sep 17, 2015 · 5 comments
Open
Labels

Comments

@zhangyq1011
Copy link

执行命令加密数据库密码

在命令行中执行如下命令:

java -cp druid-0.2.23.jar com.alibaba.druid.filter.config.ConfigTools you_password
输出

h9gzp23dkJIZ95Xzj/waxsC2oJ1JoWTh76o4aw7+uGGh63ovAULVOrPewOwHP5i3LCIXqNyvpxJ2nceDFBbzVw==
输入你的数据库密码,输出的是加密后的结果。

通过查看源码发现 使用RSA 非对称加密算法、通过上面的语句生成的密码是使用默认的私钥加密的、解密也雷同使用默认的公钥解密的。这样岂不是不安全了,没有发现druid配置公钥和私钥的地方。那我们生产环境配置的密码很简单每一位开发人员都可以使用相同的方法解密出来了。谢谢!

@wenshao
Copy link
Member

wenshao commented Sep 18, 2015

比明文安全,如果你要更安全,查看代码 com.alibaba.druid.filter.config.ConfigFilter,com.alibaba.druid.filter.config.ConfigTools,看了这两个类的代码,你就应该知道如何自定义配置key。

@zhangyq1011
Copy link
Author

已经找到解决方案、多谢!com.alibaba.druid.filter.config.ConfigFilter文件定义的有说明。

@zone1511
Copy link

正常使用RSA 非对称加密算法 是通過publicKey 加密 privateKey 解密. 而config filter 的操作是相反的
這個設計是基於甚麼原則的?

@wenshao
Copy link
Member

wenshao commented Nov 17, 2017

历史原因,做得不够规范,但已成事实

@KaapoMarcus
Copy link

已经找到解决方案、多谢!com.alibaba.druid.filter.config.ConfigFilter文件定义的有说明。

请问你是怎么解决的?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants