0
我有这个在Glassfish中工作,如果我不哈希我的密码(所以他们是纯文本)它工作正常。FlexibleJDBCRealm和摘要
但是,如果我尝试使用哈希,我不能得到它的工作。在我的Java代码,当我创建一个新用户,我散列这样的密码(使用字符集编码的默认值)
MessageDigest md5 = MessageDigest.getInstance("MD5");
byte[] hashedPassword = md5.digest(password.getBytes());
return new String(hashedPassword);
而且在我设置了“password.digest”属性的境界属性MD5。
注意,我将在现实中使用SHA-512,但为了简化,我尝试使用MD5,因为它在FlexibleJDBCRealm的文档中提到。
任何想法?谢谢
PS现在有更多'官方'版本的Java包含这种领域吗?如果在某些时候将JavaJBCRealm(或类似的)内置到Java EE中,那就太好了。
什么是不工作,恰恰? –
它只是不让我用密码被散列的用户登录。所以我猜测我的散列方式和FlexibleJDBCRealm即将推出的散列之间存在细微差别。我在我的代码和FJDBCR的属性中都使用了标准算法名称,所以我想不出还会有什么不同。 – Richard
您是否使用代码中的默认值以外的字符集进行了试验?在调用'getBytes()'和'new String()'?恐怕只是抓着吸管。 –