StandardPasswordEncoder最适合在spring security 3.1中使用salting密码?

时间:2011-04-14 05:36:53

标签: security passwords spring-security sha1 salt

我想在我正在处理的网站上添加密码salting,我发现Spring Security 3.1有一些新功能可以让它变得非常容易。

我对StandardPasswordEncoder类有疑问。它的运作方式与我的预期略有不同。使用它比编写盐渍本身更简单,但我认为还有一些我不明白的“魔法”。

StandardPasswordEncoder似乎随机为我添加哈希值,这很好。但是在将原始密码与编码密码相匹配时......如何在不知道原始盐是什么的情况下才能匹配密码?

根据我的理解,一旦你制作盐,你就不能回去......所以如果首先有一个随机盐来生成编码哈希...... StandardPasswordEncoder如何能够匹配密码在以后?我很迷惑。我不应该得到盐,将盐保存在数据库中,然后供应盐?如果没有我存储和提供盐值,它怎么能做到这一点?

感谢您清理混乱。我希望我的问题有道理。

1 个答案:

答案 0 :(得分:4)

它存储与salt连接的散列密码,请参阅StandardPasswordEncoder.java,以便在检查密码时知道盐。