BCryptPasswordEncoder - 为什么它会产生太多的值?

时间:2016-07-15 16:07:17

标签: java bcrypt

我有一个密码更新功能,它使用以下方法:

protected String encodePassword(String password) {
    BCryptPasswordEncoder passwordEncoder = new BCryptPasswordEncoder();

    System.out.println(password);
    System.out.println(passwordEncoder.encode(password));

    return passwordEncoder.encode(password);
}

在这样的更新方法中调用它:

user.setPassword(encodePassword(password));

但控制台打印输出是:

abc123
$2a$10$h0ya/4Ly7eenT.I5FAex9OByLa8S8yP.4H1lfGrCq/w4wD93p.4MK
$2a$10$o.//zfHY3jIyuzC0h.Z.c.AL9rPdrrWN4M8DaUpxmtqoQKA0D4udG
$2a$10$arkyirVDsfMbGWhDKBY02ehjDKXXa62yk8fD/b1Pa2I3AhlzhoK.a
$2a$10$5HpCoNtM3mTgBsJlyeP5v.5NdN7YkKkLJMXecJ8fs0yxkB1nrJpiq
$2a$10$94nfxZ7musAu//FRjgxSNOm92vf/FtZU1I2QNPJI3HNVsHfgVnqbi

该方法只被调用一次,但它产生了五个不同的值。怎么样?

0 个答案:

没有答案