private StandardPasswordEncoder(String algorithm, String secret) { if(null == secret){ secret = Strings.EMPTY; } this.digester = new Digester(algorithm, DEFAULT_ITERATIONS); this.secret = Utf8.encode(secret); this.saltGenerator = KeyGenerators.secureRandom(); }
private byte[] digest(String rawPassword, byte[] salt) { byte[] digest = digester.digest(Bytes.concat(salt, secret, Utf8.encode(rawPassword))); return Bytes.concat(salt, digest); }