【问题标题】:Encrypt a connection string, how?加密连接字符串,如何?
【发布时间】:2012-01-02 10:21:43
【问题描述】:

我想在我的 database.java 类中加密/隐藏我的连接字符串。我已经搜索了互联网,但我没有找到任何有用的东西,也许我搜索了错误的关键字?这是我当前的代码。

conn = DriverManager.getConnection("jdbc:mysql://database/db", "username", "password");

如何隐藏用户名和密码?所以只有我的应用程序可以看到它?而且解压罐子的时候看不到?

谢谢。

【问题讨论】:

    标签: java mysql jdbc connection


    【解决方案1】:

    加密连接字符串不是你需要的!我想您需要一种更好的方式来存储您的密码。为此,您应该将密码存储在应用程序启动时读取的单独文件中。这是防止密码因反编译而泄漏的唯一真正方法。

    看到这个答案:From a similar question

    【讨论】:

      【解决方案2】:

      您可以在方法中对字符串进行字节尾编码,并使该方法返回一个字符串。如果您希望可以添加使用输入字节提取实际字符串的加密算法。

      【讨论】:

      • 正如 Sanjay 在下面指出的那样,这是一种更好的方法。使用加密 api 从应用程序附带的属性文件中提取用户名、密码和 url。这样你还可以实现一些许可功能..(这有点复杂)
      • 我想在这个答案中添加一件事:避免将加密密钥与加密数据一起存储。
      猜你喜欢
      • 2012-05-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-05
      • 2016-02-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多