Урок 2. Пароли и менеджеры паролей
Пароль защищает аккаунт, только пока его никто не знает и не может угадать. Угадывают пароли не люди, а программы — быстро и без устали. Хороший пароль должен быть таким, чтобы программа не нашла его за разумное время, и таким, чтобы утечка с одного сайта не открыла другие.
Как пароли угадывают
Злоумышленникам доступны базы с миллиардами паролей из прошлых утечек. Поэтому программы перебора начинают не с aaaa, а с того, что люди выбирают чаще всего:
- популярные пароли:
123456,qwerty,password,111111; - слова, имена, клички, даты:
Natasha1990,barsik2015; - «хитрые» замены, которые давно известны:
p@ssw0rd,Pa$$w0rd; - узоры на клавиатуре:
1q2w3e4r,zxcvbn.
Пароль, придуманный «из головы», почти всегда попадает в одну из этих групп. Если сайт хранил пароли плохо и его базу украли, такой пароль находят за минуты.
Что делает пароль надёжным
Три свойства, по важности:
- Уникальность. Свой пароль на каждом сайте. Это важнее всего остального: даже очень сложный пароль бесполезен, если он утёк вместе с базой форума и подходит к почте.
- Случайность. Пароль выбирает не человек, а генератор или кубик. Человек выбирает предсказуемо.
- Длина. Каждый лишний знак умножает число вариантов. Длина важнее «сложности»: от замены
aна@вариантов почти не прибавляется, а от четырёх лишних знаков — в миллионы раз.
Сколько вариантов приходится перебрать при разной длине и разном наборе знаков, считает программа:
def combinations(alphabet, length):
return alphabet ** length
examples = [
("PIN-код из 6 цифр", 10, 6),
("8 строчных латинских букв", 26, 8),
("8 знаков: буквы двух регистров и цифры", 62, 8),
("12 знаков: буквы двух регистров и цифры", 62, 12),
("4 случайных слова из списка в 7776 слов", 7776, 4),
("6 случайных слов из того же списка", 7776, 6),
]
for name, alphabet, length in examples:
print(f"{name}: {combinations(alphabet, length):.1e}")PIN-код из 6 цифр: 1.0e+06
8 строчных латинских букв: 2.1e+11
8 знаков: буквы двух регистров и цифры: 2.2e+14
12 знаков: буквы двух регистров и цифры: 3.2e+21
4 случайных слова из списка в 7776 слов: 3.7e+15
6 случайных слов из того же списка: 2.2e+23Запись 2.1e+11 значит «2,1 умножить на 10 в степени 11», то есть около 210 миллиардов. Восемь знаков перебираются на мощном компьютере быстро, двенадцать случайных знаков или шесть случайных слов — нет. Это верно только для случайных паролей: Natasha1990 формально тоже 11 знаков, но в словаре перебора он стоит среди первых.
Парольная фраза
Пароль, который нужно помнить наизусть — от компьютера, почты, менеджера паролей, — удобно сделать из нескольких случайных слов: гранит пирог ласточка трамвай угол. Такую фразу легко запомнить, а угадать трудно, если слова выбраны случайно, а не связаны по смыслу. Пять–шесть слов — хороший запас. Фразы из примеров не берите: опубликованный пароль уже не секрет.
Если сайт не принимает русские буквы или пробелы, наберите те же слова латиницей и соедините дефисом: granit-pirog-lastochka-tramvaj-ugol. Подробнее — справка Как придумать надёжный пароль.
Менеджер паролей
Запомнить сотню разных случайных паролей невозможно. Для этого есть менеджер паролей — программа, которая хранит пароли в зашифрованном виде и подставляет их на сайтах. Помнить нужно один главный пароль — от самого менеджера.
Что умеет хороший менеджер:
- создаёт случайные пароли нужной длины одной кнопкой;
- подставляет пароль только на том сайте, для которого он сохранён. На поддельном сайте с похожим адресом менеджер пароль не предложит — и это заметный сигнал, что сайт не тот;
- синхронизирует пароли между компьютером и телефоном;
- предупреждает об одинаковых, слабых и утёкших паролях.
Какие бывают:
- встроенные в браузер и систему — менеджер паролей Google в Chrome и Android, приложение «Пароли» в iPhone и Mac, менеджер в Firefox. Просты, всегда под рукой;
- отдельные программы — например, бесплатные с открытым кодом KeePassXC (хранит пароли в файле на вашем компьютере, без облака) и Bitwarden (облачная синхронизация, есть бесплатный тариф).
Подробнее о выборе — справка Что такое менеджер паролей.
Главный пароль у большинства менеджеров восстановить нельзя: в этом и смысл защиты. Забыли его — потеряли доступ ко всем сохранённым паролям. Запишите главный пароль на бумаге и храните её дома, отдельно от компьютера и телефона, пока не запомните.
Как перейти на менеджер
- Установите менеджер с официального сайта или из магазина приложений.
- Придумайте главный пароль — парольную фразу из 5–6 случайных слов.
- Включите второй шаг входа для менеджера, если он облачный: урок Двухфакторная аутентификация.
- Смените пароли на самых важных аккаунтах — почта, банк, мессенджеры — на созданные генератором.
- Остальные сайты меняйте постепенно, когда заходите на них.
Где пароли хранить нельзя
- в заметках на телефоне и в файле «пароли.txt» на рабочем столе — их читает любая вредоносная программа;
- на стикере на мониторе;
- в переписке с самим собой в мессенджере или в почте;
- в голове, если это один пароль на всё.
Менять ли пароль регулярно
Нет. Современные рекомендации, например NIST (Национальный институт стандартов и технологий США), прямо говорят: не заставлять людей менять пароли по расписанию. От частой смены пароли становятся только проще: Vesna2024, Leto2024. Пароль меняют, когда есть причина: утечка на сайте, подозрение на взлом, пароль кому-то сообщили.
Коротко
- Главное в пароле — уникальность: свой на каждом сайте.
- Надёжный пароль случаен и длинен: от 12 случайных знаков или 5–6 случайных слов.
- Замены букв на значки (
p@ssw0rd) программы перебора знают. - Менеджер паролей хранит пароли в зашифрованном виде, создаёт их и не подставляет на поддельных сайтах.
- Главный пароль менеджера не восстанавливается — запишите его и храните дома.
- По расписанию пароли не меняют, только при утечке или подозрении.