PBKDF2 онлайн - вывод ключа

Выведите криптографический ключ из пароля с помощью PBKDF2-HMAC прямо в браузере. Настройте хеш-функцию (SHA-1, SHA-256, SHA-384 или SHA-512), число итераций, длину выходного ключа и salt. В режиме Verify можно сравнить пароль-кандидат с уже сохранённым PBKDF2-значением в hex.

Соль (пусто — случайная)
Пароль
0 симв. · 0 байт
Хеш для проверки
Попробовать:
Результат
✓ Обработка выполняется локально в браузере ✓ Ввод не отправляется на сервер
Примеры
Обычный пароль
Хеш-функция: SHA-256 Итерации: 600000 Длина ключа (байт): 32
Вход пароль123

Типичный пользовательский пароль. Нажмите Compute, чтобы вывести ключ с текущими настройками.

Парольная фраза
Хеш-функция: SHA-256 Итерации: 600000 Длина ключа (байт): 32
Вход верный конь батарейка скрепка

Длинная парольная фраза легче запоминается и обычно даёт больше энтропии, чем короткий пароль.

PBKDF2-HMAC-SHA512
Хеш-функция: SHA-512 Итерации: 210000 Длина ключа (байт): 64 Соль (пусто — случайная): docs-example-salt
Вход секрет-для-релиза

Пример с SHA-512, 64-байтным выводом и фиксированным salt для повторяемой документации или проверки совместимости.

Проверка высокой стоимости
Хеш-функция: SHA-256 Итерации: 1000000 Длина ключа (байт): 32 Соль (пусто — случайная): login-user-42-unique-salt
Вход парольная фраза админ-панели

PBKDF2-HMAC-SHA256 с одним миллионом итераций: удобно сравнить задержку и убедиться, что одинаковые параметры воспроизводят тот же ключ.

Что такое PBKDF2?

PBKDF2 (Password-Based Key Derivation Function 2) — это алгоритм вывода ключа из пароля, описанный в RFC 2898 и стандартизованный в NIST SP 800-132. Он принимает пароль, salt, число итераций, псевдослучайную функцию вроде HMAC-SHA256 и длину вывода, а затем создаёт детерминированный криптографический ключ.

Алгоритм специально делает вычисление дорогим: каждая итерация повторяет работу HMAC, поэтому каждая попытка подбора пароля занимает больше времени. Этот PBKDF2 онлайн инструмент использует браузерный Web Crypto API и выводит hex-ключ локально, не отправляя пароль или salt на сервер.

PBKDF2 применяют для хранения паролей, зашифрованных файловых форматов, резервных копий кошельков, API test fixtures и совместимых систем, где протокол требует PBKDF2-HMAC-SHA256 или PBKDF2-HMAC-SHA512.

PBKDF2 vs bcrypt vs Argon2

PBKDF2 — самый переносимый вариант вывода ключа: он есть в браузерах, OpenSSL, Java, .NET, Python, Node.js, API операционных систем и многих средах с требованиями к совместимости. Поэтому он удобен для совместимого хеширования паролей, миграций старых баз и систем, где нужны форматы PBKDF2_HMAC или pbkdf2_sha256.

Слабое место PBKDF2 в том, что он нагружает в основном CPU и почти не требует памяти. Атакующие с GPU и ASIC могут распараллеливать перебор PBKDF2 гораздо эффективнее, чем защитники на обычных application servers.

bcrypt лучше сопротивляется GPU-атакам, потому что использует небольшое внутреннее состояние в памяти. Argon2id — современный вариант по умолчанию для нового хранения паролей: он memory-hard и гибко настраивается. Выбирайте Argon2id, если контролируете стек; выбирайте PBKDF2, если важнее совместимость, поддержка Web Crypto, FIPS-ориентированная среда или требования существующего протокола.

Параметры PBKDF2: hash, salt, iterations, key length

Этот PBKDF2 генератор показывает параметры, которые чаще всего нужны разработчику. Hash выбирает HMAC-digest, используемый как псевдослучайная функция: SHA-256 — практичный выбор по умолчанию, SHA-512 часто встречается в системах на SHA-2, SHA-384 доступен для совместимости, а SHA-1 стоит оставлять только для legacy-форматов.

Salt должен быть уникальным для каждого пароля или выводимого ключа. Он не обязан быть секретным: храните его вместе с derived hash или зашифрованными данными. В production генерируйте salt криптографически стойким random-источником. Фиксированный salt подходит только для повторяемых примеров и test vectors.

Iterations управляет стоимостью вычисления. Чем больше значение, тем медленнее легитимная проверка и офлайн-перебор. Значение по умолчанию — 600 000 итераций для PBKDF2-HMAC-SHA256, что соответствует базовой рекомендации OWASP 2024. Key length — размер вывода в байтах: 32 байта дают 256-битный ключ и 64-символьный hex-результат; 64 байта дают 512-битный вывод.

Генерация, проверка и хранение PBKDF2

Используйте режим Hash, чтобы получить PBKDF2 hex-значение из пароля и выбранных параметров. Используйте режим Verify, если у вас уже есть сохранённое PBKDF2 hex-значение: инструмент заново выводит ключ с тем же salt, hash, числом итераций и длиной ключа, а затем сообщает, совпадают ли значения.

PBKDF2 нельзя расшифровать. Это односторонняя функция вывода ключа, поэтому проверка возможна только через повторный вывод значения для пароля-кандидата с исходными параметрами и сравнение результата. Если изменить любой параметр — salt, hash-функцию, iterations или key length — итоговое значение тоже изменится.

Для реальных аккаунтов выполняйте хеширование паролей на сервере приложения: с поддерживаемой библиотекой, rate limiting, мониторингом и планом обновления параметров. Этот PBKDF2 онлайн калькулятор лучше использовать для обучения, отладки совместимости, документирования параметров, создания воспроизводимых test vectors и проверки хеша во время разработки.

FAQ

OWASP 2024 рекомендует 600 000 итераций для PBKDF2-HMAC-SHA-256 и 210 000 для PBKDF2-HMAC-SHA-512. NIST SP 800-132 задаёт минимум 1 000 итераций, но сегодня это очень низкая планка. Правильное значение зависит от угроз и железа: ориентируйтесь на 100-500 мс на вашем сервере. Больше итераций пропорционально замедляет атакующего; меньше итераций снижает задержку для пользователя.

Salt — это уникальное случайное значение, которое добавляется к каждому паролю перед выводом ключа. Без salt одинаковые пароли дают одинаковые хеши, что делает практичными rainbow table атаки. С уникальным salt для каждого пользователя атакующему приходится атаковать каждый хеш отдельно. Salt не должен быть секретным, он должен быть уникальным; 16 случайных байт обычно достаточно. Храните salt рядом с хешем.

Выбирайте PBKDF2, когда нужны широкая поддержка платформ, FIPS-валидация или совместимость с legacy-системами. Для новых систем, где он доступен, Argon2id обычно лучше. У PBKDF2 нет memory cost, поэтому атакующие могут дешево распараллеливать перебор на GPU. Для приложений с высокими требованиями к безопасности рекомендуемый выбор — Argon2id.

Нет. PBKDF2 вычисляется полностью в вашем браузере через Web Crypto API (window.crypto.subtle.deriveBits). Пароль и salt не покидают устройство: нет сетевых запросов, логирования или серверной обработки.

Нет. PBKDF2 — это не шифрование, поэтому операции дешифровки не существует. Это односторонняя функция вывода ключа. Чтобы проверить пароль, нужно снова вычислить PBKDF2 с тем же salt, hash-функцией, числом итераций и длиной ключа, а затем сравнить новый hex-результат с сохранённым значением.

Используйте PBKDF2-HMAC-SHA256, если протокол или существующая база не требуют другой вариант. PBKDF2-HMAC-SHA512 тоже распространён, особенно в системах, где уже стандартизован SHA-512. SHA-384 доступен для совместимости. Не используйте SHA-1 в новых схемах; оставляйте его только для legacy-форматов, которые явно требуют PBKDF2-HMAC-SHA1.

Храните derived hash, salt, число итераций, hash-функцию и длину ключа. Одного PBKDF2-вывода недостаточно для последующей проверки пароля: verifier должен повторить вычисление с теми же параметрами. Одни системы кодируют все поля в одну строку, другие хранят их отдельными колонками.

Нет. Salt должен быть уникальным и желательно случайным, но это не секретный ключ. Его задача — сделать так, чтобы одинаковые пароли давали разные PBKDF2-значения, и не позволить атакующему переиспользовать заранее вычисленные таблицы. Храните salt рядом с хешем.

Используйте его для обучения, сравнения параметров, проверки совместимости и test vectors. Для production-аккаунтов вычисляйте и проверяйте PBKDF2 на сервере: с безопасными случайными salt, rate limiting, мониторингом и контролируемым обновлением параметров. Одно только браузерное хеширование не заменяет серверные меры хранения паролей.
Связанные инструменты

Генератор HMAC

Рассчитайте HMAC для текста с секретным ключом прямо в браузере.