Менеджер паролей — это программа, которая хранит в зашифрованном хранилище пароли и другие данные, например номера банковских карт, заметки или изображения документов. Это удобно, потому что позволяет придумывать, а потом не помнить наизусть сложные и по-настоящему надёжные пароли (или даже генерировать их автоматически). Нужно знать только один мастер-пароль, который даёт доступ ко всем сохранённым данным. Разбираемся, какие бывают менеджеры паролей, как они шифруют данные, что в этом хорошего и плохого.
Важно: про мастер-пароль
Доступ к хранящимся в менеджере паролей данным можно получить только по мастер-паролю. Если его забыть, доступ ко всем данным будет утерян.
Локальные менеджеры паролей
Примеры:
Локальные менеджеры паролей хранят данные на устройстве пользователя и не отправляют их куда-то ещё. Они не зависят от внешних серверов для хранения или управления паролями, поэтому постоянное подключение к интернету не требуется.
Локальные менеджеры паролей представлены в виде десктопной программы для установки на компьютер, portable-программы для хранения на флешке или как расширение для браузера. Плюс таких менеджеров — в их безопасности. Зашифрованный файл с паролем хранится только у вас на устройстве и никуда не отправляется. Если вы немного параноик и не хотите, чтобы хоть какие-то ваши критичные данные попали на чужие компьютеры, локальный менеджер паролей — ваш выбор.
Минус тоже очевиден: если устройство сломается или потеряется или файл с базой паролей случайно удалится или повредится, то все пароли тоже будут утеряны. Поэтому важно делать бэкапы таких штук — хотя бы просто копировать файл с данными на флешку.
![Типичный интерфейс локального менеджера паролей](https://thecode.media/wp-content/uploads/2024/07/unnamed-7-1-1-e1720448696946.png)
Онлайн-менеджеры паролей
Примеры:
Онлайн, или облачные, менеджеры паролей хранят данные на сервере, который предоставляет такую услугу бесплатно или по подписке.
Облачные менеджеры паролей представлены в виде десктопных программ и мобильных приложений, а также как расширения для браузеров. Основное преимущество облачных менеджеров паролей — доступность с любого устройства, если есть интернет.
Минусы в том, что безопасность данных напрямую зависит от сервиса. Если сервер взломают, злоумышленники получат доступ ко всем данным, которые вы там храните. Понятно, что если файлы с паролями защищены мастер-паролем, то его тоже нужно будет взломать, но иногда случается и такое, что данные внутри сервиса могут быть не защищены.
![Онлайн-менеджер паролей](https://thecode.media/wp-content/uploads/2024/07/unnamed-8.png)
Как работают менеджеры паролей
В основе работы любого менеджера паролей лежит шифрование данных: всё хранится в зашифрованном виде.
Когда вы заходите в менеджер паролей, обычно происходит следующее:
- Вы вводите мастер-пароль, чтобы получить доступ к своему хранилищу паролей.
- Если мастер-пароль введён правильно и успешно прошёл проверку, менеджер паролей расшифровывает с его помощью всю базу с вашими паролями.
Теперь подробнее о том, как это устроено.
Когда вы вводите мастер-пароль, он преобразуется в ключ шифрования с помощью, например, криптографической функции получения ключа PBKDF2 (Password-Based Key Derivation Function 2) или Argon2.
Функция PBKDF2 берёт ваш пароль и добавляет к нему «соль» — случайную последовательность символов, которая делает процесс более безопасным. Затем PBKDF2 повторяет процесс шифрования много раз — чем больше итераций, тем сложнее подобрать ключ. Это делается для того, чтобы усложнить задачу хакерам, которые пытаются угадать пароль методом подбора.
Затем сгенерированный ключ используется для расшифровки зашифрованных данных. Зашифрованные данные загружаются из хранилища, и ключ применяется для их расшифровки.
Сами пароли обычно шифруются с помощью симметричного алгоритма AES (Advanced Encryption Standard) — это один из наиболее распространённых методов шифрования данных. Выбран Национальным институтом стандартов и технологии (NIST) в 2001 году в качестве стандарта шифрования для защиты конфиденциальности данных.
![Как работают менеджеры паролей](https://thecode.media/wp-content/uploads/2024/07/unnamed-9.png)
В локальных менеджерах все данные хранятся и шифруются на самом устройстве пользователя. Расшифровка и использование данных также происходят только на этом устройстве.
В онлайн-менеджерах данные шифруются локально, но затем отправляются и хранятся на сервере. Это позволяет синхронизировать пароли между разными устройствами пользователя через облачное хранилище.
Онлайн-менеджеры используют технологию нулевого знания: то есть мастер-пароль и ключи шифрования никогда не покидают ваше устройство и провайдер не имеет технической возможности расшифровать ваши данные. Провайдер хранит только зашифрованную версию данных и не имеет доступа к исходной информации.
Для доступа к паролю менеджер паролей повторно генерирует ключ шифрования, используя тот же мастер-пароль, ту же соль и те же параметры итераций. В результате получается тот же ключ шифрования, который использовался для изначального шифрования пароля.
Чем хороши менеджеры паролей
Менеджеры паролей могут сами генерировать сильные пароли. Они используют встроенный алгоритм для генерации случайного пароля на основе заданных критериев. Для криптографической безопасности используются криптографически стойкие генераторы случайных чисел (CSPRNG), которые обеспечивают высокую степень непредсказуемости.
В итоге у нас получается пароль с нужными нам параметрами, которые тоже можно поменять в настройках: длина, наличие прописных и строчных букв, цифр и специальных символов.
![Чем хороши менеджеры паролей](https://thecode.media/wp-content/uploads/2024/07/unnamed-2.gif)
И если вы где-то используете слабый пароль, менеджер предложит заменить его на более надёжный.
Ещё одна удобная штука таких менеджеров паролей — автоподстановка данных на сайтах. При повторном посещении сайта или приложения менеджеры автоматически заполняют поля для ввода логина и пароля. Это защищает пользователя от программ-кейлоггеров, которые могут перехватить пароль.
В чём подвох, если всё так хорошо
Несмотря на все уровни защиты, ни один менеджер паролей не гарантирует стопроцентной безопасности. Взлом серверов провайдера менеджера паролей может привести к утечке зашифрованных данных, как это было, например, с менеджером паролей LastPass в 2022 году.
У любого менеджера паролей есть слабое место — мастер-пароль. Вся безопасность зависит от одного мастер-пароля, и если злоумышленники узнают его, то получат доступ ко всем данным. Если вы забудете мастер-пароль, получить доступ к своим сохранённым паролям, скорее всего, будет невозможно, поскольку большинство безопасных менеджеров паролей не позволяют восстанавливать мастер-пароль.
Поэтому чаще делайте резервное копирование и используйте двухфакторную аутентификацию (2FA) для дополнительной безопасности.