- При регистрации юзер вводит некий пароль
- Генерим случайную соль индивилуально для каждого юзера
- Создаем хеш на основе введенного юзером пароля и соли
- Записываем хеш(не пароль) в БД + соль в отдельном филде
- Юзер вводит в поле авторизации некий пароль
- Берем данный пароль, берем соль из базы
- Солим только сто полученный пароль, в итоге получаем хеш
- Берем валидную хеш из БД и сравниваем ее с только что полученной хешЮ
- Profit, если введенный пароль вырный авторизируем, если нет говорим юзеру ввести правильный пароль
https://github.com/dcodeIO/bcrypt.js
var bcrypt = require('bcryptjs');
bcrypt.genSalt(10, function(err, salt) {
bcrypt.hash("B4c0/\/", salt, function(err, hash) {
// Store hash in your password DB.
});
});