Хранение паролей в Android¶
Хранение паролей в Android — это механизмы операционной системы Android и прикладных программ, обеспечивающие сохранение учётных данных пользователя (логинов, паролей, ключей доступа) в защищённом виде на мобильном устройстве. Система использует несколько уровней хранения: от встроенного менеджера паролей Google до защищённых хранилищ приложений, работающих поверх шифрования на уровне ОС.
¶Уровни хранения паролей в Android
Пароли на устройстве под управлением Android хранятся не в одном месте, а распределены по нескольким хранилищам в зависимости от их назначения.
¶Google Password Manager (встроенный менеджер)
Главное хранилище паролей для большинства пользователей — Google Password Manager, встроенный в ОС и в браузер Chrome. Он сохраняет учётные данные, которые пользователь вводит при регистрации или входе на сайты и в приложения. Доступ к нему осуществляется через «Настройки Google» → «Автозаполнение» → «Автозаполнение с Google» → «Пароли», либо через браузер Chrome (раздел «Пароли»). Синхронизация выполняется с аккаунтом Google, поэтому пароли доступны на всех устройствах пользователя.
Данные хранятся на серверах Google в зашифрованном виде, а на устройстве — в защищённом контейнере, доступ к которому защищён экранной блокировкой (PIN-код, пароль, графический ключ или биометрией). При просмотре списка паролей система запрашивает подтверждение личности.
¶Android Credential Manager и Keystore
С 2023 года Google развивает Credential Manager — единый API для управления учётными данными, который заменяет устаревший AccountManager. Credential Manager поддерживает не только пароли, но и passkey (криптографические ключи), а также данные, сохранённые сторонними менеджерами паролей.
Для хранения криптографических ключей Android использует Android Keystore System — аппаратно-программный комплекс, который позволяет выполнять криптографические операции в изолированной среде (TEE или Secure Element). Ключи из Keystore не могут быть извлечены из устройства даже при root-доступе. Многие менеджеры паролей (Bitwarden, KeePassDX, 1Password) используют Keystore для защиты мастер-пароля или ключа шифрования базы данных.
¶Хранилище приложений
Приложения хранят свои данные в защищённых каталогах /data/data/<имя_пакета>/. Каталог доступен только самому приложению и системе. Некоторые приложения сохраняют учётные данные в SharedPreferences или в зашифрованных базах данных SQLite. Однако хранение паролей в открытом виде в SharedPreferences считается небезопасной практикой — рекомендуется использовать Keystore или шифрованные базы.
¶Браузер Chrome
Пароли, сохранённые в браузере Chrome, хранятся в базе данных Login Data (SQLite) в каталоге приложения Chrome. С 2014 года Google шифрует эту базу с помощью ключа, привязанного к аккаунту пользователя. На устройствах с Android 8.0 и выше используется аппаратное шифрование через Keystore.
¶Шифрование и защита
Начиная с Android 5.0 все устройства поддерживают шифрование данных на уровне файловой системы (FBE — File-Based Encryption). При включённом шифровании файлы приложений, включая базы с паролями, защищены до момента разблокировки экрана. Начиная с Android 10 шифрование стало обязательным для новых устройств.
Дополнительную защиту обеспечивает экранная блокировка: до ввода PIN-ключа или прохождения биометрической проверки зашифрованные данные недоступны. Биометрические датчики (отпечаток пальца, 2D/3D-распознавание лица) работают через подсистему BiometricPrompt, которая передаёт приложениям только результат проверки, не раскрывая биометрические шаблоны.
¶Как просмотреть сохранённые пароли
Для просмотра сохранённых паролей Google Password Manager необходимо открыть «Настройки» → «Google» → «Автозаполнение» → «Пароли» (путь может незначительно отличаться в зависимости от версии Android и оболочки). Перед показом пароля система запросит подтверждение личности. Альтернативный путь — через браузер Chrome: «Настройки» → «Пароли».
Для паролей, сохранённых в стороннем менеджере (KeePassDX, Bitwarden), доступ осуществляется через само приложение после ввода мастер-пароля.
¶Сторонние менеджеры паролей
Помимо встроенного решения Google, в Google Play доступны сторонние менеджеры паролей, которые хранят данные в собственных зашифрованных базах. Наиболее распространённые — Bitwarden, KeePassDX (открытый клиент KeePass), 1Password, Proton Pass. Эти приложения используют алгоритмы AES-256 или ChaCha20 для шифрования базы и Android Keystore для защиты ключа шифрования. Данные могут храниться локально на устройстве или синхронизироваться с облаком (при выборе облачного хранения).
¶Рекомендации по безопасности
- Включить двухфакторную аутентификацию в аккаунте Google.
- Использовать сложный экранной блокировку (минимум 6-значный PIN или пароль).
- Регулярно проверять сохранённые пароли в Google Password Manager на предмет утечек (раздел «Проверка паролей»).
- При работе с критичными аккаунтами использовать отдельный менеджер паролей с локальным хранением.
Источники: документация Android Developers (developer.android.com), справочный центр Google Account Help, материалы Google Security Blog.
