如何在java中加密敏感的SQL信息

如何在java中加密敏感的SQL信息,java,sql,oracle,Java,Sql,Oracle,假设我想在Java应用程序中连接到oracle数据库,我必须写下jdbc url并输入该数据库的用户名和密码,如果没有程序源,我不知道如何破解该密码,但我必须加密吗?有没有加密的方法?那么sql注入呢?您可以使用AES算法对密码进行加密并将其存储在数据库或安全区域。当您构建JDBC URL时,检索此信息并解密它。 可通过此链接获得更多信息: SQL注入是一种不同类型的漏洞存在于代码中,因为没有对用于构造SQL语句的数据进行验证。您可以加密密码并使用AES算法将其存储在DB或安全区域。当您构造J

假设我想在Java应用程序中连接到oracle数据库,我必须写下jdbc url并输入该数据库的用户名和密码,如果没有程序源,我不知道如何破解该密码,但我必须加密吗?有没有加密的方法?那么sql注入呢?

您可以使用
AES算法
对密码进行
加密并将其存储在数据库或安全区域。当您构建
JDBC URL
时,检索此信息并
解密它。
可通过此链接获得更多信息:


SQL注入是一种不同类型的
漏洞
存在于代码中,因为没有对用于构造SQL语句的数据进行验证。

您可以
加密密码
并使用
AES算法
将其存储在DB或安全区域。当您构造
JDBC URL
时,检索此信息并对其进行解密。 可通过此链接获得更多信息:


SQL注入是另一种类型的
漏洞
存在于代码中,因为没有对用于构造SQL语句的数据进行验证。

您没有提供足够的信息来了解您的全部情况,但我将尝试分解一些您可能想知道的一般情况。首先,db驱动程序需要提供未加密的用户名/密码,因此,如果您担心在内存中未加密这些信息,那么这并没有什么区别。一般来说,访问数据库的方法比扫描内存中的用户名/密码字符串更简单

如果您正在制作一个将分发字节码(.class文件或.jar文件)的应用程序,那么人们可以从技术上通过该字节码找到硬编码字符串,例如用户名/密码(但即使您有该字符串,也可能很难确定它们到底是什么)

如果您正在制作一个将在web服务器上运行的应用程序,那么任何人都不应该访问您的字节码或内存,因此他们不可能真正获得这些信息(除非他们以前以某种方式入侵过您的服务器)。不过,您可能希望将数据库连接信息外部化到属性文件中,以便管理软件的人员可以轻松地对其进行配置,尽管根据您的需求,情况可能并非如此


SQL注入是一个完全不同的问题,对于我来说,它有点过于宽泛,无法在这里进行讨论。我建议您仔细阅读处理它的方法,但在很大程度上,它将归结为使用准备好的语句,而不仅仅是执行SQL(这通常也会提高您的性能)。

您没有提供足够的信息来了解您的全部情况,但我会试着把一些你可能想知道的一般事情分解一下。首先,db驱动程序需要提供未加密的用户名/密码,因此,如果您担心在内存中未加密这些信息,那么这并没有什么区别。一般来说,访问数据库的方法比扫描内存中的用户名/密码字符串更简单

如果您正在制作一个将分发字节码(.class文件或.jar文件)的应用程序,那么人们可以从技术上通过该字节码找到硬编码字符串,例如用户名/密码(但即使您有该字符串,也可能很难确定它们到底是什么)

如果您正在制作一个将在web服务器上运行的应用程序,那么任何人都不应该访问您的字节码或内存,因此他们不可能真正获得这些信息(除非他们以前以某种方式入侵过您的服务器)。不过,您可能希望将数据库连接信息外部化到属性文件中,以便管理软件的人员可以轻松地对其进行配置,尽管根据您的需求,情况可能并非如此


SQL注入是一个完全不同的问题,对于我来说,它有点过于宽泛,无法在这里进行讨论。我建议您仔细阅读处理它的方法,但在很大程度上,它将归结为使用准备好的语句,而不仅仅是执行SQL(这通常也会提高您的性能)。

我正在用Java编写注册表,我遇到了同样的问题。对我来说唯一有意义的是使用php表单进行注册,这样他们就不会访问您的数据库,只通过服务器进行通信。我设想了一种单向加密方法,在用户输入密码时,只有在对密码进行散列后,才能将密码与散列匹配,而不是授予用户对数据库的权限。对黑客行为有了一些了解,我觉得用户可以访问的任何信息都是一个安全缺陷。版主多次表示不要在源代码中以明文形式存储密码。SQL有一些方法可以授予有限的db权限,您可以根据需要删除信息

下面是一个链接,我会相信一些,但它基本上给自己留下了一个书面线索,散列必须从隐藏在某处的zip文件中提取,在身份验证期间检索,并可以添加到网站


我正在用Java编写注册表单,遇到了同样的问题。对我来说唯一有意义的是使用php表单进行注册,这样他们就不会访问您的数据库,只通过服务器进行通信。我设想了一种单向加密方法,在用户输入密码时,只有在对密码进行散列后,才能将密码与散列匹配,而不是授予用户对数据库的权限。对黑客行为有了一定的了解,我觉得任何信息访问