Я обдумываю возможность перехода на файловое шифрование на своем устройстве, но не могу найти удовлетворительные ответы на следующие вопросы:
Приложения могут размещать данные либо в хранилище с шифрованием учетных данных (CE), либо в хранилище с шифрованием устройства (DE), но обязательно ли это означает, что все файлы в нем /data/
зашифрованы? Что, если я запускаю echo 1 > /data/test.txt
из оболочки? Шифруется test.txt
через CE?
Я хочу, чтобы мои данные были защищены более чем четырехзначным PIN-кодом. Можно ли по-прежнему использовать отдельную загрузочную кодовую фразу для разблокировки шифрования?
Чтобы включить FBE, /data/
необходимо выполнить вайпы. Могу ли я восстановить резервную копию TWRP до FBE после включения полного восстановления моих данных?
TWRP по-прежнему запрашивает пароль шифрования при загрузке, как при полном шифровании диска?
Могу ли я сделать так, чтобы TWRP не запрашивал пароль для шифрования, чтобы я мог запускать автоматическое резервное копирование через OpenRecoveryScript?
Если я создам резервную копию, не предоставив свой пароль шифрования, достаточно ли умен TWRP, чтобы восстановить зашифрованные данные как есть при восстановлении?
Есть ли какие-либо другие предостережения по резервному копированию или восстановлению TWRP, о которых я должен знать, прежде чем погрузиться в них?
Приложения могут размещать данные либо в хранилище с шифрованием учетных данных (CE), либо в хранилище с шифрованием устройства (DE), но обязательно ли это означает, что все файлы в /data/ зашифрованы?
Что будет зашифровано и какой ключ будет использоваться, зависит от политики шифрования . Политика шифрования определяет для каждого каталога, что следует шифровать. Исключения (без шифрования) тоже возможны.
Для Android 9 и ниже используемая политика жестко закодирована в исходном коде Android .
Там вы можете прочитать, что в настоящее время известны некоторые исключения:
Для некоторых из этих исключений существует политика шифрования для указанного подкаталога. Однако, если я правильно понимаю, размещение файлов непосредственно в одном из этих каталогов означает, что шифрование применяться не будет.
В Android 10 политика шифрования была жестко закодирована в этом месте:
/system/extras/libfscrypt/fscrypt_init_extensions.cpp
1
В Android 11 и более поздних версиях политика шифрования больше не жестко запрограммирована в централизованном расположении, а определяется аргументами команд mkdir в сценариях инициализации. Для каталогов, зашифрованных системным ключом DE, используется шифрование=Требуется, а для незашифрованных каталогов (или каталогов, подкаталоги которых зашифрованы ключами для каждого пользователя) используется шифрование=Нет. 1
/data/data
исключено из шифрования? Это каталог, в котором находятся все настройки приложения. /data/user
это каталог, в котором находятся пользовательские файлы, так называемое «внутреннее хранилище».
Роберт