加密连接字符串,如何?
Posted
技术标签:
【中文标题】加密连接字符串,如何?【英文标题】:Encrypt a connection string, how? 【发布时间】:2012-01-02 10:21:43 【问题描述】:我想在我的 database.java 类中加密/隐藏我的连接字符串。我已经搜索了互联网,但我没有找到任何有用的东西,也许我搜索了错误的关键字?这是我当前的代码。
conn = DriverManager.getConnection("jdbc:mysql://database/db", "username", "password");
如何隐藏用户名和密码?所以只有我的应用程序可以看到它?而且解压罐子的时候看不到?
谢谢。
【问题讨论】:
【参考方案1】:加密连接字符串不是你需要的!我想您需要一种更好的方式来存储您的密码。为此,您应该将密码存储在应用程序启动时读取的单独文件中。这是防止密码因反编译而泄漏的唯一真正方法。
看到这个答案:From a similar question
【讨论】:
【参考方案2】:您可以在方法中对字符串进行字节尾编码,并使该方法返回一个字符串。如果您希望可以添加使用输入字节提取实际字符串的加密算法。
【讨论】:
正如 Sanjay 在下面指出的那样,这是一种更好的方法。使用加密 api 从应用程序附带的属性文件中提取用户名、密码和 url。这样你还可以实现一些许可功能..(这有点复杂) 我想在这个答案中添加一件事:避免将加密密钥与加密数据一起存储。以上是关于加密连接字符串,如何?的主要内容,如果未能解决你的问题,请参考以下文章