Генератор Bcrypt
Хешируйте пароли с помощью bcrypt или проверяйте пароль по существующему хешу bcrypt.
Генератор Bcrypt
Bcrypt — это функция хеширования паролей, созданная так, чтобы быть медленной и «солированной», поэтому это правильный инструмент для хранения паролей пользователей и неправильный для шифрования сообщений, которые вы планируете прочитать. Этот генератор выполняет две задачи. В режиме хеширования он принимает пароль и возвращает хэш bcrypt, например $2b$10$… который вы можете сохранить в базе данных. В режиме проверки он принимает пароль плюс существующий хэш и сообщает вам, совпадают ли они, что и делает проверка входа на сервер.
Стоимость или раунды определяют, сколько работы занимает каждый хэш: каждый дополнительный раунд удваивает время. Более высокая стоимость делает офлайн-угадывание медленнее для злоумышленника, но также замедляет каждый хеш для вас, поэтому выбирайте значение, которое ваше оборудование может себе позволить при каждом входе в систему. Этот инструмент позволяет от 4 до 12; значение по умолчанию, равное 10, является распространенным производственным выбором. Поскольку здесь bcrypt полностью работает в вашем браузере, высокая стоимость может стать заметным моментом на телефоне — это алгоритм, работающий должным образом, а не зависание.
Каждый хэш содержит свою собственную случайную соль, сгенерированную с помощью криптографически безопасного случайного источника браузера, поэтому хеширование одного и того же пароля дважды дает два разных хеша, и оба все равно проверяются. Именно эта соль побеждает заранее вычисленные радужные таблицы. Обратите внимание, что bcrypt считывает только первые 72 байта пароля.
Bcrypt является односторонним: «расшифровки» не существует. Вы можете проверить потенциальный пароль только по сохраненному хэшу, но никогда не восстанавливать из него оригинал. Все происходит локально в вашем браузере — вводимый вами пароль никогда не загружается, не регистрируется и никуда не отправляется, поэтому здесь безопасно проверять настоящие пароли.