Полное руководство по хешированию паролей и безопасности хеширования Bcrypt
Для веб-разработчиков, администраторов баз данных и инженеров по безопасности безопасное хранение паролей пользователей является наиболее важным требованием безопасности серверной части. Сохранение паролей в виде обычного текста является серьезным нарушением безопасности. Даже использование быстрых алгоритмов хеширования, таких как MD5, SHA-256 или SHA-512, делает вашу пользовательскую базу данных уязвимой для автономного грубого взлома, если ваш сервер взломан.
Bcrypt остается стандартным алгоритмом хеширования паролей, разработанным специально для защиты от атак с аппаратным ускорением. Наш Генератор хэшей Bcrypt позволяет мгновенно создавать, анализировать и проверять хэши Bcrypt в браузере.
<час>Криптография, лежащая в основе Bcrypt: почему медлительность является функцией безопасности
Большинство алгоритмов хеширования (например, MD5 и SHA-256) были разработаны с расчетом на скорость — они позволяют системам проверять большие файлы или проверять целостность за микросекунды. Однако применительно к паролям эта скорость становится серьезной помехой. Современный кластер графических процессоров может проверять миллиарды хэшей SHA-256 в секунду, взламывая простые пароли пользователей за считанные минуты.
Bcrypt устранил эту уязвимость, введя адаптивный рабочий коэффициент (параметр стоимости) на основе блочного шифра Blowfish:
<ул>Пошаговое руководство: как генерировать и проверять хеши Bcrypt
<ол>Матрица безопасности хеширования: Bcrypt, MD5, SHA-256 и Argon2
<таблица> <голова> <тр>Как разобрать хэш-строку Bcrypt
Сгенерированный хеш Bcrypt имеет строгий 60-символьный формат:
$2b$12$LQv3c1yqBWVHxkd0LHAkCOYz6TtxMQJqhN8/LewdBPj/nEwFvF2Wy
Разбивка компонентов:
<ул>$2b$: определяет конкретную используемую версию алгоритма Bcrypt.$12$: определяет параметр стоимости (2^12 = 4096 итераций).$LQv3c1yqBWVHxkd0LHAkCO: 22-символьная соль.Yz6TtxMQJqhN8/LewdBPj/nEwFvF2Wy: 31-значное хеш-значение Blowfish.