我正在尝试从Java代码生成有效的流星密码。
我知道流星使用bcrypt,它似乎在前面运行SHA-256哈希。但我无法让它发挥作用。有没有人成功地做到了这一点?我尝试过这样的事情:
String password = "secret123";
MessageDigest digest = MessageDigest.getInstance("SHA-256");
Charset scs = StandardCharsets.UTF_8;
//Charset scs = StandardCharsets.ISO_8859_1;
byte[] encodedhash = digest.digest(password.getBytes(scs));
String hash = new String(encodedhash, scs);
String bcrypt = BCrypt.hashpw(hash, BCrypt.gensalt());
这将返回一个看起来像有效bcrypt密码的字符串,但是流星在我将其存储在MongoDB中并尝试从流星代码登录后不接受它。
江户川乱折腾
相关分类