Генератор Bcrypt Хеша
Генерируйте и проверяйте bcrypt хеши для безопасного хранения паролей. Используйте адаптивные факторы стоимости для надежного хеширования против атак перебора.
Сгенерировать Хеш
Сгенерируйте bcrypt хеш из вашего текста. Более высокие раунды обеспечивают лучшую безопасность, но требуют больше времени для обработки.Проверить Хеш
Проверьте, соответствует ли bcrypt хеш исходному тексту.О Bcrypt
Что такое Bcrypt?
Bcrypt - это криптографическая функция хэширования паролей, основанная на шифре Blowfish. Она разработана для адаптивного замедления процесса хэширования, что делает ее устойчивой к атакам грубой силы.
Как работает Bcrypt
Bcrypt использует соль для защиты от атак радужными таблицами и настраиваемый параметр стоимости, который экспоненциально увеличивает время, необходимое для вычисления хэша.
Фактор стоимости
Параметр стоимости определяет количество итераций алгоритма. Каждое увеличение на 1 удваивает время вычисления. Рекомендуемые значения находятся между 10-15.
Преимущества безопасности
- Адаптивная стоимость: Может быть увеличена по мере роста вычислительной мощности
- Встроенная соль: Каждый хэш включает уникальную соль
- Намеренно медленный: Устойчив к атакам грубой силы
- Проверенная безопасность: Широко используется в производственных системах
Примеры использования
Пример PHP
// // Генерация bcrypt хэша
$password = "mySecretPassword";
$hash = password_hash($password, PASSWORD_BCRYPT, ['cost' => 12]);
// // Проверка пароля против хэша
if (password_verify($password, $hash)) {
echo "// Пароль действителен!";
}
Пример Node.js
// // Генерация bcrypt хэша
const bcrypt = require('bcrypt');
const saltRounds = 12;
const hash = await bcrypt.hash('mySecretPassword', saltRounds);
// // Проверка пароля против хэша
const isValid = await bcrypt.compare('mySecretPassword', hash);
Лучшие практики
Выбор раундов
- 10-12 раундов: Подходит для большинства веб-приложений
- 13-15 раундов: Для высокозащищенных систем
- 16+ раундов: Только для критически важных систем
Общая безопасность
- Всегда используйте bcrypt для хэширования паролей
- Никогда не храните пароли в открытом виде
- Регулярно тестируйте время выполнения и при необходимости увеличивайте стоимость
- Используйте дополнительные меры безопасности, такие как ограничение скорости