使用Spring Security的PasswordEncoder创建基于AES加密的密码

时间:2011-04-15 04:09:41

标签: spring-security

我需要创建基于AES的加密密码。我正在使用Spring Security 3.0.5的PasswordEncoder.endcodePassword方法并传入AES,但我不确定这是否是正确的技术......

passwordEncoder.encodePassword(“xyz”,“AES”)

1 个答案:

答案 0 :(得分:1)

这是一个非常奇怪的要求。通常的密码存储策略是存储它们的哈希值。如果他设法访问您的数据库,它可以防止恶意用户获取密码。 Spring Security的内置密码编码器实现了这种方法。

使用对称加密在数据库中存储密码的想法似乎不太安全,因为您需要在应用程序的某个地方存储密钥,而且如果恶意人员可以访问您的数据库,他也可能会获得访问您的密钥,以便他可以解密您的密码。

但是,如果您重新使用该方法,则可以基于在Java中使用AES的一些教程,实现您自己的PasswordEncoder获取密钥并使用AES加密。