Теория
Bcrypt — алгоритм хеширования паролей с солью: к паролю добавляется случайная строка, и результат медленно перемешивается заданное число раундов. Соль делает одинаковые пароли разными хешами, а «дороговизна» вычисления (cost) мешает массовому перебору.
Готовый хеш хранит всё для проверки: версию, cost, соль и сам результат — одной строкой вида \(\$2a\$12\$…\). Argon2id — современный наследник bcrypt, победитель конкурса Password Hashing Competition.
Важно: хранить пароли можно только в таком виде — никогда в открытую и не в быстрых хешах типа MD5.
Пример с решением
- Условие. Получите bcrypt-хеш пароля «secret».
- Формула. Случайная соль + 12 раундов перемешивания (cost = 12).
- Подстановка. Соль генерируется заново при каждом вызове.
- Вычисление. На выходе строка \(\$2a\$12\$\ldots\) — соль и раунды видны в начале.
- Ответ. Хеш вида $2a$12$…; повторный расчёт того же пароля даст другую строку из-за новой соли — это норма. Калькулятор покажет хеш; проверять его нужно режимом «Bcrypt проверка».
Главное
- Соль делает одинаковые пароли разными хешами.
- Cost — число раундов, замедляет перебор.
- Argon2id — современная альтернатива.