Java:在属性文件中存储加密数据库(和其他)密码的最佳选项是什么?

Java:在属性文件中存储加密数据库(和其他)密码的最佳选项是什么?,java,database,encryption,passwords,jasypt,Java,Database,Encryption,Passwords,Jasypt,我检查是否在属性文件中存储数据库加密密码。它与Spring等有很好的集成,但这家伙提出的加密密码的方法对我来说有点奇怪: 使用PBE(对称算法)加密 将用于加密/解密的密码存储在环境变量或源代码中 两种选择看起来都不安全,而且有点不安全 我的问题: 存储加密密码的最佳做法是什么 我可以在这里使用基于密钥的加密(即私钥/公钥)吗 在我们的应用程序中,我们使用两种方法: 我们使用一个企业密码保险库来存储我们所有数据库的密码。我们的web服务器每次都从vault请求密码以连接数据库 我们将加密密码存储

我检查是否在属性文件中存储数据库加密密码。它与Spring等有很好的集成,但这家伙提出的加密密码的方法对我来说有点奇怪:

  • 使用PBE(对称算法)加密

  • 将用于加密/解密的密码存储在环境变量或源代码中

  • 两种选择看起来都不安全,而且有点不安全

    我的问题:

  • 存储加密密码的最佳做法是什么
  • 我可以在这里使用基于密钥的加密(即私钥/公钥)吗

  • 在我们的应用程序中,我们使用两种方法:

  • 我们使用一个企业密码保险库来存储我们所有数据库的密码。我们的web服务器每次都从vault请求密码以连接数据库

  • 我们将加密密码存储在属性文件中。 在应用程序启动期间,我们使用类加载器读取属性文件,并将其作为系统变量保存,并在需要时使用它


  • 直接使用db进行公钥/私钥加密是很困难的,您需要一个中介来实现这一点。

    在我们的应用程序中,我们使用两种方法:

  • 我们使用一个企业密码保险库来存储我们所有数据库的密码。我们的web服务器每次都从vault请求密码以连接数据库

  • 我们将加密密码存储在属性文件中。 在应用程序启动期间,我们使用类加载器读取属性文件,并将其作为系统变量保存,并在需要时使用它


  • 直接使用db进行公钥/私钥加密是很困难的,您需要一个中介来完成这项工作。

    Hi Sanket。当你说“我们的应用程序”时,这是否意味着你有一个特定的角色wrt Jasypt或Spring?你能透露一下这个角色吗?嗨,桑克特。当你说“我们的应用程序”时,这是否意味着你有一个特定的角色wrt Jasypt或Spring?你能透露一下这个角色吗?salt+hash+使用可识别的算法。@assylias密码哈希将如何帮助jdbc密码?好的,我需要jdbc驱动程序的未加密密码。3d party services也可能出现同样的情况,您必须通过用户名/密码进行身份验证。我误解了您的问题。salt+hash+使用可识别的算法。@assylias密码哈希将如何帮助jdbc密码?好的,我需要jdbc驱动程序的未加密密码。3d party services也可能出现同样的情况,您必须通过用户名/密码进行身份验证。我误解了您的问题。