devopscodepro
Язык
Работает полностью в браузере — данные не покидают страницу.

bcrypt / htpasswd

Генерация хэшей полностью в браузере, под капотом WASM.

10

Генерация bcrypt-хешей

bcrypt — намеренно медленный хеш пароля со встроенной в вывод солью, поэтому два хеша одного пароля никогда не совпадают. Cost factor задаёт, насколько медленный: каждый шаг удваивает работу.

Хеш и необязательная строка htpasswd создаются в вашем браузере, поэтому пароль не покидает страницу.

Здесь же можно проверить существующий хеш против пароля — самый быстрый способ убедиться, что сохранённые учётные данные и введённые пользователем действительно совпадают.

Какой cost factor выбрать?

Такой, чтобы один хеш занимал примерно 250 мс на том железе, где идёт проверка, — сегодня это обычно 12. Слишком низкий делает офлайн-перебор дешёвым; слишком высокий превращает ваш эндпоинт входа в поверхность отказа в обслуживании против вас самих.

Почему каждый раз получается другой хеш?

Потому что в каждый попадает свежая случайная соль, и она хранится внутри строки хеша. Проверка перечитывает эту соль, поэтому сравнение работает, хотя строки разные. Хеш пароля, дающий одинаковый вывод каждый раз, был бы дефектом.

Есть ли у bcrypt ограничение длины?

Да, 72 байта. Всё сверх этого молча игнорируется. Если вы принимаете длинные парольные фразы, предварительно хешируйте SHA-256 перед bcrypt или используйте argon2id.

Стоит ли брать bcrypt для новых систем?

Там, где есть выбор, сегодня рекомендуют argon2id. bcrypt остаётся вполне разумным вариантом, доступен везде и понятен htpasswd и множеству существующих стеков.

Смежные инструменты: Генератор паролей, Проверка утечки пароля и Декодер JWT.