Перейти к основному содержимому
FreeOnlineTools Go
Русский
Решение проблем

Безопасность паролей: Как генерировать, хранить и аудировать сильные пароли

Автор: FreeOnlineTools Team · Обновлено 2026-08-28

Быстрый ответ

Генерируйте 16+ символьные случайные пароли нашим Password Generator, никогда не повторно используйте и храните в password manager. На server хешируйте с bcrypt (work factor 12+), scrypt или Argon2id —никогда MD5 или SHA-256. Аудит через Have I Been Pwned API.

Введение

Слабые, повторно используемые и неправильно хранимые пароли вызывают большинство захватов аккаунтов. Этот гайд решает четыре конкретные проблемы: (1) генерация паролей с достаточной entropy для сопротивления brute force, (2) хеширование паролей медленным KDF вместо быстрого hash, (3) избегание повторного использования и (4) аудит утёкших credentials.

Шаг за шагом

  1. Создайте пароль с высокой энтропией

    Используйте генератор паролей, чтобы создать пароль длиной более 16 символов, сочетающий верхние, нижние буквы, цифры и символы. Энтропия = log2(charsetSize^length); 16-символьный алфавит из 94 символов дает ~ 105 бит, что невозможно перебрать даже при скорости 10 ^ 12 предположений в секунду.

  2. Никогда не используйте повторно пароли в разных сервисах

    Повторное использование одного пароля означает, что одно нарушение скомпрометирует каждую учетную запись, использующую его. Создайте уникальный пароль для каждой службы и сохраните его в менеджере паролей (Bitwarden, 1Password, KeePassXC). Единственный пароль, который вам нужно запомнить, — это длинная парольная фраза.

  3. Хешируйте пароли с помощью медленного KDF на сервере

    Никогда не храните пароли с помощью MD5, SHA-1 или необработанного SHA-256 — они слишком быстрые, а графические процессоры могут выполнять миллиарды попыток в секунду. Используйте bcrypt с рабочим коэффициентом 12+, scrypt с N=2^17 или Argon2id с памятью 64 МБ. Эти KDF намеренно медленны и требовательны к памяти, чтобы противостоять атакам на GPU/ASIC.

  4. Используйте соль, чтобы победить радужные столы

    Соль — это уникальное случайное значение для каждого пароля, добавляемое или объединенное перед хешированием. Это гарантирует, что одинаковые пароли создают разные хэши, что делает бесполезными заранее рассчитанные радужные таблицы. bcrypt и Argon2 автоматически генерируют и внедряют соль — не создавайте свою собственную.

  5. Аудит на предмет взлома паролей

    Прежде чем принять пароль, проверьте его на соответствие Have I Been Pwned API с помощью протокола k-anonymity: отправьте только первые 5 символов хеша SHA-1, получите список совпадающих суффиксов и сравните локально. При этом полный пароль к API никогда не раскрывается.

Примеры

Надежный сгенерированный пароль (16 символов, энтропия ~105 бит)

Вход: Длина 16, все классы символов.

Выход: K9$mP2#vL7@nQ4!x (случайный, уникальный, никогда не используется повторно)

Парольная фраза для мастер-пароля (запоминающийся + надежный)

Вход: 4 случайных общих слова

Выход: correct-horse-battery-staple (~44 bits but easy to remember; use 5-6 words for ~60+ bits)

bcrypt хеш пароля (коэффициент работы 12)

Вход: пароль 123 со стоимостью bcrypt 12

Выход: $2b$12$N9qo8uLOickgx2ZMRZoMy.MrqKQp7vqB4V1e5sTq7vqB4V1e5sTq (соль + стоимость + встроенный хэш)

Распространенные проблемы

  • Использование MD5 или SHA-256 для хеширования паролей: оба являются быстрыми хэшами. Современный графический процессор вычисляет около 10 миллиардов SHA-256/с, взламывая 8-значный пароль за считанные минуты. Всегда используйте bcrypt, scrypt или Argon2id.
  • Повторное использование одного пароля на разных сайтах: взлом на самом слабом сайте приводит к утечке пароля для каждого сайта. Генерируйте уникальные пароли и сохраняйте их в менеджере.
  • Хранение паролей в виде открытого текста или обратимое шифрование: в случае утечки базы данных каждая учетная запись будет мгновенно скомпрометирована. Хеширование является односторонним и необратимым — даже сервер не может восстановить оригинал.
  • Низкий коэффициент работы в bcrypt: стоимость 4 была нормальной в 2002 году; в 2026 году стоимость использования 12+ (примерно 4096 итераций). Повторно хешируйте при входе в систему, чтобы обновить старые хэши без принудительного сброса пароля.

Советы

  • Стремитесь к минимуму 100 бит энтропии для учетных записей с высокой стоимостью — это 16 случайных символов из 94-символьного алфавита или 6 случайных игровых слов.
  • Включите двухфакторную аутентификацию (TOTP или аппаратный ключ) для каждой учетной записи, которая ее поддерживает — одного надежного пароля недостаточно, если пароль является фишинговым.
  • Используйте опцию «исключить неоднозначные символы» нашего генератора паролей (0/O, 1/l/I), когда пароли будут читаться вслух или вводиться в печатном виде.
  • Меняйте пароли только после подтвержденного нарушения, а не по фиксированному графику — принудительная ротация приводит пользователей к предсказуемым шаблонам, таким как Spring2026!.

Сопутствующие инструменты

Связанные руководства

Ссылки