Я пытаюсь получить Node.JS Crypto PBKDF2, чтобы сопоставить такое же значение с PHP Crypto PBKDF2. По какой-то причине это не то же самое.PHP и Node.JS - Crypto PBKDF2
В JavaScript
const crypto = require('crypto');
crypto.pbkdf2('secret', 'salt', 100000, 20, 'sha512', (err, key) => {
console.log(key.toString());
});
Выход: 7E������]�9��J]�i
В PHP
$password = "secret";
$iterations = 100000;
$salt = "salt";
$hash = hash_pbkdf2("sha512", $password, $salt, $iterations, 20);
echo $hash;
Выход: 3745e482c6e0ade35da1
Почему выход JS не соответствие PHP?
Спасибо, это похоже на работу! Можно ли что-то сделать с помощью пароля_hash() в JavaScript? –
Добро пожаловать. Что вы хотите делать с password_hash()? –
Когда хэш генерируется через password_hash(), то в JS должен быть проверен пароль против хэша, созданный на PHP. –