Залипни

Надёжный пароль

Впишите свой пароль — и увидите его энтропию в битах, время перебора и словарные слабости. Пароля пока нет? Кнопка придумает запоминаемую фразу из русских слов, а таблица покажет, почему длина бьёт сложность.

Проверка пароля

Пароль не покидает ваш браузер — страница статическая, отправлять некуда. Нет серверной части, нет аналитики ввода, нет localStorage: перезагрузка страницы стирает всё начисто.

Здесь появится оценка: энтропия в битах, время перебора и найденные словарные паттерны. Формула простая: длина умножить на логарифм мощности алфавита.

Попробуйте примеры

Придумать надёжный

Три случайных слова из демо-словаря, дефис и двузначное число — получается что-то вроде Корабль-Лампа-Морж-47: диктуется вслух и запоминается с первого раза.

Нажмите кнопку — фраза мелькнёт и соберётся

Честная арифметика: словарь из 60 слов даёт фразе около 27 бит словарной энтропии. Против P@ssw0rd это победа, но для мастер-пароля банка берите больше слов: слайдер до 6 слов живёт в большом генераторе паролей.

Длина против сложности: двигайте алфавит
a-z+A-Z+0-9+!@#

Сейчас в алфавите 62 знаков (+ цифры 0-9). Смотрите, как от этого зависит время перебора строк разной длины — и почему лишний символ работает сильнее лишнего символа-крючка.

ДлинаЭнтропияПеребор при 10 млрд попыток/с
8 симв.47,6 бит
3 часа
12 симв.71,5 бит
5,1 тыс. лет
16 симв.95,3 бит
дольше, чем живёт Вселенная
20 симв.119,1 бит
дольше, чем живёт Вселенная

Время среднее: половина всех паролей вскрывается раньше указанного срока. «Дольше, чем живёт Вселенная» означает, что за 13,8 млрд лет переборщик не дойдёт и до половины вариантов.

Мини-квиз «Слабое звено»
Счёт: 0 из 4

1. Какой пароль из двух стойче?

2. Что переберут быстрее: 8 символов из всех наборов или 16 только строчных?

3. Главный изъян пароля Маша1995?

4. Где паролям самое безопасное место?

Что делает пароль надёжным на самом деле

Надёжный пароль — это не тот, в котором хитро закручены символы, а тот, который невозможно угадать быстрее, чем пройдёт жизнь вселенной. Мерой такой непредсказуемости служит энтропия, измеряемая в битах. Каждый бит удваивает число вариантов, которые обязан перебрать взломщик. Формула для случайной строки простая: длина пароля, умноженная на логарифм мощности алфавита. Строчные латинские буквы дают алфавит из 26 знаков и по 4,7 бита за символ. Полный набор — строчные, заглавные, цифры и знаки препинания — это 94 знака и по 6,55 бита за символ.

Цифры лучше один раз увидеть. Сорок бит — около триллиона комбинаций, агрессивная ферма на видеокартах при скорости десять миллиардов попыток в секунду закончит средний перебор через пятьдесят пять секунд. Шестьдесят бит растягивают то же развлечение на два года. Восемьдесят бит — на два миллиона лет. Сто бит — на два триллиона лет, то есть в полторы сотни раз дольше, чем существует Вселенная. Отсюда практический порог: двенадцать знаков — минимум для форумов, шестнадцать и больше — для почты, банков и мастер-пароля менеджера.

Теперь главное заблуждение. Подмена буквы «а» на собаку добавляет биты один раз, а каждый дополнительный символ умножает пространство перебора целиком: к алфавиту из 62 знаков прибавили одну позицию — и комбинаций стало в шестьдесят два раза больше. Поэтому длинная строка из простых слов бьёт короткую строку с крючками. Энтропия любит длину, а не остроумие. И поэтому же «сложный» пароль из восьми знаков проигрывает скучной фразе из шестнадцати строчных букв: пятьдесят два с половиной бита против семидесяти пяти.

Как проверяют пароль на прочность: четыре способа взлома

Первый и самый быстрый способ — словарная атака. Взломщик не перебирает все комбинации подряд, а прогоняет хэш через готовые списки: миллиарды утёкших паролей, слова из словарей всех языков, имена и клички, а поверх них — правила подмены. Замена «о» на ноль, «а» на собаку, добавление года на конце — каждое правило дешёвое, и машина применяет их пачками. Пароль вида P@ssw0rd2024 выглядит хитрым для человека, но для словаря с правилами это первая строка: подбор занимает секунды, потому что вся «сложность» тут — известный шаблон.

Второй способ — полный перебор, брутфорс. Здесь нет никаких догадок: очередь символов движется от «аааааааа» до «99999999». Скорость зависит от хэш-функции: против старой MD5 одна игровая видеокарта выдаёт десятки миллиардов попыток в секунду, против современных медленных функций вроде argon2 — тысячи. Проблема в том, что вы не управляете тем, как сайт хранит пароли. Поэтому честная оценка делается по худшему для вас сценарию — десять миллиардов в секунду, как в таблице ниже. Даже сто миллиардов не спасут слабую строку: если время взлома измеряется минутами, рост скорости фермы в десять раз просто сделает эти минуты секундами.

Третий способ вообще не требует взламывать: базы утечек продаются и публикуются, и ваш пароль мог уехать туда целиком. Сервисы вроде «проверил себя по базе утечек» тут не панацея, а диагностика: если строка всплыла, считать её стойкость уже бессмысленно — она скомпрометирована независимо от количества бит.

Четвёртый способ, самый продуктивный, — credential stuffing, «начинка учёток». Злоумышленник берёт пары логин-пароль из одной утечки и пробует их на десятках других сайтов: люди повторяют пароли, и конверсия такой атаки стабильно радует мошенников. Заметьте, что здесь стойкость конкретного пароля не важна: важна его уникальность. Идеально крепкий пароль, используемый на пяти сайтах, — это пять дверей с одним ключом, который уже побывал в чужих руках.

Таблица времени перебора: длина против алфавита при 10 млрд попыток в секунду

Ниже — время среднего перебора, то есть половины всего пространства вариантов, при агрессивной скорости десять миллиардов попыток в секунду. Строчные — это 26-знаковый алфавит, полный набор — 94 знака: буквы двух регистров, цифры и символы.

ПарольЭнтропияВремя перебора
8 строчных букв37,6 бит10 секунд
12 строчных букв56,4 бита55 дней
12 знаков полного набора78,7 битаоколо 750 тысяч лет
16 знаков полного набора104,9 бита105 триллионов лет
20 строчных букв94 бита31 миллиард лет

В таблице спрятаны два урока. Первый: посмотрите на строки «12 знаков полного набора» и «20 строчных букв». У двадцати простых букв — девяносто четыре бита против семидесяти восьми у двенадцати хитрых, и это тридцать один миллиард лет против семисот пятидесяти тысяч. Длина умножает, сложность прибавляет. Второй урок: скачок от двенадцати строчных к двенадцати полным даёт семьсот пятьдесят тысяч лет, но скачок от восьми к двенадцати строчным — уже пятьдесят пять дней вместо десяти секунд. Каждые четыре добавленных символа стоят дороже любого украшательства.

Оговорка ради честности: эти цифры — потолок пессимизма для случайной строки. Если пароль осмысленный, настоящая его защита от словарной атаки измеряется не битами формулы, а отсутствием в списках. Поэтому инструмент проверки выше и считает энтропию по алфавиту, и отдельно ищет словарные паттерны — два разных способа проиграть, и оба лучше знать в лицо.

Как проверить свой пароль прямо сейчас, не отправляя его никуда

Теория хороша, но людям свойственно сначала посмотреть на свой случай. Инструмент вверху страницы для этого и сделан: впишите строку — и увидите энтропию в битах, цветную шкалу, время перебора и красные строки с найденными паттернами вроде «популярный обрывок 123» или «похоже на год рождения». Формула та же, что и в этой статье, скорость перебора — те же десять миллиардов в секунду.

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

И одна оговорка про оценку. Формула по алфавиту считает все комбинации равновероятными, поэтому осмысленные слова она переоценивает: строка из русских слов наберёт десятки «формальных» бит, хотя словарная атака съест её быстрее. Инструмент подсвечивает такие случаи янтарной подсказкой, а настоящую энтропию слов разберём в следующем разделе — там она честно считается по словарю, и это совсем другая арифметика.

Passphrase: почему Корабль-Лампа-Морж-47 бьёт P@ssw0rd

Парольная фраза, она же passphrase, — это пароль из нескольких случайных слов с разделителем и парой цифр. Секрет её силы — в арифметике слов. Каждое случайное слово из словаря в шестьдесят тысяч позиций приносит почти шестнадцать бит энтропии. Четыре слова — уже шестьдесят три бита, примерно как шестнадцать знаков полного набора, только помнить это в сто раз легче. Мозг хранит образы охотнее, чем значки: «корабль, лампа и морж плывут за номером сорок семь» вспоминается через месяц без всяких мнемоник, а Kx9!pQ2z не вспоминается и через час.

Теперь про проигравшую сторону. Восемь знаков P@ssw0rd дают пятьдесят два бита только в формуле по алфавиту. Для словарной атаки эффективная энтропия близка к нулю: слово password есть в списке, все варианты с собакой вместо «а» и нулём вместо «о» сгенерированы правилами заранее, цифра на конце тоже перебирается пачкой. Подмена символов добавляет видимость сложности, потому что человек оценивает её на глаз, а машина — списками правил. Итог: фраза из словаря, которой не грозит словарная атака, сильнее «сложного» слова, которое этой атаке уже сдалось.

Где passphrase уместнее всего: мастер-пароль менеджера, код разблокировки телефона, пароль от домашнего Wi-Fi, который придётся диктовать гостям вслух. Цифры между словами лучше не брать из головы — люди странно неравномерны и выбирают одни и те же «случайные» числа, а честный жребий без предрассудков бросает генератор случайных чисел. Для зарубежных сервисов, не принимающих кириллицу, фразу переводят латиницей через транслит — набор символов другой, схема та же. А если хочется покрутить длину и наборы по полной, генератор паролей онлайн позволяет и шесть слов, и шестьдесят четыре знака, и исключение похожих символов.

Менеджер паролей: один главный пароль и уникальные на каждый сайт

Правило «один пароль — один сайт» звучит как приговор памяти: тридцать аккаунтов, тридцать строк, невозможно. Возможно — но не в голове. Менеджер паролей хранит базу в зашифрованном виде, подставляет логин и пароль по нажатию и требует помнить ровно одну вещь: мастер-пароль. К нему и применяется вся сила passphrase — четыре-пять слов, которые никто не угадает, а вы не забудете. Одна утечка на форуме с мемами остаётся локальной проблемой форума, а не ключом к почте, банку и фотоархиву сразу.

Уникальность — не паранойя, а статистика. Credential stuffing из предыдущего раздела живёт ровно до первого уникального пароля: связка логин-пароль, украденная на одном сайте, на другом просто не подходит. Десять посредственных, но разных паролей безопаснее одного великолепного на всё. Это контринтуитивно, потому что «великолепный» ощущается как защита, но защита здесь — изоляция, а не прочность стен.

Начинать наводить порядок стоит с почты: она — ключ ко всем остальным аккаунтам, потому что через неё работают процедуры сброса. Сгенерируйте для неё длинную случайную строку в генераторе паролей, включите двухфакторку и уже потом спокойно переносите остальные аккаунты в менеджер один за другим. Через месяц такой рутины список «где я повторял пароли» окажется пустым — и это одно из немногих упражнений по цифровой гигиене, которое заканчивается навсегда.

Двухфакторная аутентификация: второй замок простыми словами

Двухфакторная аутентификация добавляет ко входу второй вопрос, на который нельзя ответить перебором. Самый распространённый вариант — TOTP-коды: приложение-аутентификатор и сайт договорились о секрете, и каждые тридцать секунд приложение показывает шесть цифр, действительных только для этого сайта и этого окна времени. Угадать код можно с шансом один на миллион, а перебирать бессмысленно — через полминуты код уже другой. Даже украденный пароль без текущего кода бесполезен.

Есть нюансы, о которых честно скажу. SMS-коды слабее приложений: симку перевыпускают мошенники через подставных «операторов», а телефоны теряются. Аппаратные ключи и приложения с привязкой к устройству надёжнее. Отдельная ловушка — фишинг: код можно не угадать, а просто спросить у вас, замаскировав запрос под страницу входа. Код, который вы вводите на чужом сайте, ровно столько стоит, сколько этот сайт. Правило простое: настоящий сервис никогда не просит код задним числом.

И самая забываемая мелочь — резервные коды. Их выдают при включении двухфакторки на случай утраты телефона, и они лежат мёртвым грузом ровно до того дня, когда телефон утонет. Распечатайте или запишите их туда же, где хранится мастер-пароль. Включать двухфакторку начинайте с почты, затем банк и соцсети: это пять минут на аккаунт, которые превращают даже полный словарный перебор в упражнение по нумизматике.

Как придумать пароль и не испортить его: шесть ошибок

Финальный разбор — коллекция граблей, на которых отпечатались миллионы людей. Если узнали себя в двух пунктах сразу, не расстраивайтесь: на исправление уйдёт вечер, а не жизнь.

ОшибкаЧем грозитЧто делать
Один пароль на все сайтыОдна утечка открывает всё: credential stuffing пробует связку везде подрядУникальный пароль на каждый сайт, всё — в менеджере
Личные данные в паролеИмя, фамилия и год лежат в открытых профилях и попадают в словари первымиСлучайные слова, не биография
Хранение в заметкахЗаметка без шифрования читается при утере телефона и любым вирусом с доступом к файламМенеджер паролей с мастер-паролем
Пароль из фильма или песниЦитаты поп-культуры — первые страницы всех словарей, проверяются за долю секундыСлучайность вместо крылатых строк
Обязательная смена каждые 30 днейЛюди меняют финальную цифру: Лето2019 превращается в Лето2020 — энтропия не растётМенять при признаках утечки, а не по календарю
Честные ответы на контрольные вопросыДевичья фамилия матери и город рождения видны в соцсетях тем же людям, что и годБессмысленные ответы, сохранённые в менеджере

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

Шестая ошибка — коварнейшая, потому что выглядит как примерная дисциплина. Контрольные вопросы — это запасные пароли, которые вы сами выложили в открытый доступ: ответы на них ищутся в профиле за минуту. Отвечайте абракадаброй и храните её рядом с паролями. И последнее: пересобрать все старые пароли за один вечер — задача из разряда «съесть слона», поэтому двигайтесь от почты к банку, от банка к соцсетям, а проверку стойкости каждой новой строки доверьте инструменту наверху этой страницы — он, в отличие от памяти, никогда не устаёт.

Частые вопросы

Как вам этот инструмент?