Шифрование — это процесс кодирования всех пользовательских данных на устройстве Android с использованием симметричных ключей шифрования. Как только устройство зашифровано, все данные, созданные пользователем, автоматически шифруются перед их записью на диск, а все операции чтения автоматически расшифровывают данные, прежде чем возвращать их вызывающему процессу. Шифрование гарантирует, что даже если неавторизованная сторона попытается получить доступ к данным, они не смогут их прочитать.
В Android есть два метода шифрования устройства: шифрование на основе файлов и шифрование всего диска.
Файловое шифрование
Android 7.0 и более поздние версии поддерживают шифрование файлов . Шифрование на основе файлов позволяет шифровать разные файлы разными ключами, которые можно разблокировать независимо друг от друга. Устройства, поддерживающие шифрование на основе файлов, также могут поддерживать прямую загрузку, что позволяет зашифрованным устройствам загружаться прямо на экран блокировки, что обеспечивает быстрый доступ к важным функциям устройства, таким как службы специальных возможностей и сигналы тревоги.
Благодаря шифрованию на основе файлов и API-интерфейсам, сообщающим приложениям о шифровании, приложения могут работать в ограниченном контексте. Это может произойти до того, как пользователи предоставят свои учетные данные, сохраняя при этом защиту личной информации пользователя.
Шифрование метаданных
В Android 9 реализована поддержка шифрования метаданных там, где присутствует аппаратная поддержка. При шифровании метаданных один ключ, представленный во время загрузки, шифрует любой контент, не зашифрованный FBE, например макеты каталогов, размеры файлов, разрешения и время создания/изменения. Этот ключ защищен Keymaster, который, в свою очередь, защищен проверенной загрузкой.
Полное шифрование диска
Android 5.0 до Android 9 поддерживает полное шифрование диска . Полнодисковое шифрование использует один ключ, защищенный паролем устройства пользователя, для защиты всего раздела пользовательских данных устройства. При загрузке пользователь должен предоставить свои учетные данные, прежде чем будет доступна какая-либо часть диска.
Хотя это отлично подходит для безопасности, это означает, что большая часть основных функций телефона недоступна сразу после перезагрузки устройства. Поскольку доступ к их данным защищен их учетными данными одного пользователя, такие функции, как сигналы тревоги, не могли работать, службы специальных возможностей были недоступны, а телефоны не могли принимать звонки.