Онлайн генератор хешей паролей — Argon2id, bcrypt, scrypt, PBKDF2 и SHA-crypt

Безопасное хеширование паролей и формирование ключей (KDF) прямо в браузере. Поддерживаются современные стандарты OWASP (Argon2id, bcrypt, scrypt, PBKDF2), устаревшие схемы Unix и Apache (SHA-crypt, MD5crypt, apr1, phpass), хеши Windows NTLM, SASL-механизмы SCRAM-SHA-256 и CRAM-SHA-1, а также схемы аутентификации MySQL 8+. Данные не покидают ваше устройство.

Blowfish-based cost factor

Справочник по алгоритмам хеширования паролей

В отличие от обычных криптографических хешей, функции формирования ключей из пароля (password hashing KDF) намеренно медленные и ресурсоёмкие. Они защищают от перебора по словарю и радужным таблицам, заставляя атакующего тратить огромные объёмы памяти и процессорного времени на каждую попытку. Ниже собраны как рекомендованные OWASP современные стандарты, так и исторические схемы для совместимости с уже существующими системами.

Argon2id

RFC 9106

Победитель Password Hashing Competition (2015). Совмещает защиту от атак по сторонним каналам (Argon2i) и от GPU/ASIC-взлома (Argon2d). Рекомендован OWASP как алгоритм по умолчанию. Параметры: память, число итераций, степень параллелизма.

bcrypt

Blowfish

Адаптивная хеш-функция на базе шифра Blowfish (Нильс Провос и Дэвид Мазьер). Использует дорогостоящее расширение ключа EksBlowfish, стоимость регулируется параметром cost (логарифм от 2). Стандарт индустрии в Unix и веб-приложениях на протяжении 25 лет.

scrypt

RFC 7914

Функция формирования ключа Колина Персиваля (RFC 7914). Основная идея — требовать большой объём оперативной памяти (N), что делает параллельный перебор на GPU и ASIC экономически невыгодным. Параметры: N (стоимость), r (размер блока), p (степень параллелизма).

PBKDF2

NIST SP 800-132

Password-Based Key Derivation Function 2 (RFC 8018, NIST SP 800-132). Многократно применяет HMAC к паролю и соли. Простой и широко поддерживаемый стандарт, но уступает Argon2id и scrypt в защите от специализированного оборудования. Рекомендуется не менее 600 000 итераций для SHA-256.

SHA-crypt / MD5crypt / apr1 / phpass

Unix / Apache / PHP

Семейство схем из /etc/shadow и конфигов веб-серверов. SHA-512crypt ($6$) и SHA-256crypt ($5$) — стандарты glibc, MD5crypt ($1$) — устаревший BSD-формат, Apache MD5 ($apr1$) — формат htpasswd, phpass ($P$) — историческая схема phpBB2 и WordPress. Используйте только для совместимости.

NTLM

Windows

Формат хеша пароля Windows (MD4 от UTF-16LE). Используется в протоколах NTLM и NetNTLM для аутентификации в Active Directory и SMB. Не применяйте для хранения новых паролей — MD4 полностью скомпрометирован.

SCRAM-SHA-256

RFC 7677

Salted Challenge Response Authentication Mechanism (RFC 5802, RFC 7677). Хранит SaltedPassword в виде StoredKey = H(ClientKey) и ServerKey = HMAC(SaltedPassword, "Server Key"), что позволяет серверу аутентифицировать клиента без хранения его пароля в открытом виде. Стандарт PostgreSQL и MongoDB.

CRAM-SHA-1

RFC 2195

Challenge-Response Authentication Mechanism (RFC 2195). Простейшая схема аутентификации: сервер посылает случайную строку, клиент отвечает HMAC-SHA-1(password, challenge). Используется в IMAP, POP3 и SMTP SASL.

MySQL authentication

caching_sha2 / native

Две схемы аутентификации MySQL. caching_sha2_password (MySQL 8+ по умолчанию) дважды применяет SHA-256 к паролю. mysql_native_password (устаревший) дважды применяет SHA-1 и является стандартом для PHP-приложений до MySQL 8.

Часто задаваемые вопросы (FAQ)

Какой алгоритм выбрать для хранения паролей пользователей?

По рекомендациям OWASP, в порядке предпочтения: Argon2id (параметры: m=19 МиБ, t=2, p=1), scrypt (N=2¹⁷, r=8, p=1) или bcrypt (cost≥10). Никогда не используйте быстрые хеши (MD5, SHA-256, NTLM) для хранения паролей — современная GPU перебирает миллиарды таких хешей в секунду. Все три рекомендованных алгоритма намеренно медленные и требуют большой объём памяти, делая взлом экономически невыгодным.

В чём разница между хешированием пароля и шифрованием?

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

Зачем нужна соль (salt) в хешах паролей?

Соль — это случайная строка, добавляемая к паролю перед хешированием. Она гарантирует, что два пользователя с одинаковым паролем получат разные хеши, что исключает атаки с предвычисленными радужными таблицами и позволяет хранить хеши параллельно с солью в одной строке. Все современные схемы (Argon2, bcrypt, scrypt, PBKDF2, SHA-crypt) включают соль в выходную строку автоматически.

Почему SHA-256crypt медленнее обычного SHA-256?

SHA-256crypt намеренно применяет обычный SHA-256 в цикле 5000 раз с дополнительными раундами для защиты от атак по времени. Это замедляет вычисление, но недостаточно — GPU всё ещё вычисляют миллионы SHA-256crypt хешей в секунду. Современные KDF вроде Argon2id пошли дальше: они требуют большой объём оперативной памяти, что делает параллельный взлом на специализированном оборудовании дороже обычных процессоров.

Другие полезные инструменты

Все операции выполняются локально в браузере.