Защищает ли мое устройство полное шифрование данных от Google и правительства?


13

Apple недавно произвела волну в техническом сообществе, отказавшись соблюдать требования правоохранительных органов в отношении доступа к зашифрованным данным пользователя. Они утверждали, что у них нет технической возможности расшифровать эти данные.

Как пользователь Android, есть ли подобная возможность (желательно встроенная в ОС вместо сторонней), которую я могу использовать для достижения подобной защиты даже от Google и моего производителя устройства? Я знаю, что в моих настройках есть "Полное шифрование устройства", но мешает ли это Google и т. Д. Получить к нему доступ?

Для справки, мое устройство работает под управлением Android Lollipop и является OnePlus Two. Если другие версии, такие как «Зефир», позволят мне сделать это, это нормально.

Ответы:


10

Google не знает, какой ключ шифрования для вашего устройства. Весь процесс происходит на вашем устройстве, и ключ никогда нигде не передается. Сам ключ также не хранится в виде открытого текста на вашем устройстве :

Хранение зашифрованного ключа

Зашифрованный ключ хранится в крипто-метаданных. Аппаратное обеспечение реализовано с использованием возможности подписи Trusted Execution Environment (TEE). Ранее мы шифровали мастер-ключ с помощью ключа, сгенерированного путем применения scrypt к паролю пользователя и сохраненной соли. Чтобы сделать ключ устойчивым к внешним атакам, мы расширяем этот алгоритм, подписывая полученный ключ хранимым ключом TEE. Результирующая подпись затем превращается в ключ соответствующей длины еще одним приложением scrypt. Этот ключ затем используется для шифрования и дешифрования главного ключа.

Таким образом, даже если у кого-то есть копия вашего зашифрованного главного ключа, он не сможет расшифровать ее без ключа TEE из SoC вашего устройства.

Таким образом, без изъянов в реализации полное шифрование устройства не позволит никому получить доступ к вашим данным, если они не узнают / не получат ваш пароль ИЛИ не смогут угадать ваш пароль (например, с помощью перебора или каких-либо методов социальной инженерии). На устройствах, которые не имеют необходимой аппаратной поддержки, FDE попытается зашифровать ключ, используя только программный метод.


@beeshyams Это особенность процессора. Реализация ARM называется «TrustZone», но другие архитектуры также предоставляют аналогичные механизмы. Идея состоит в том, что вы можете сгенерировать ключ устройства, хранить его в месте, доступном только для TEE, и никогда не раскрывать его внешнему миру. Когда вам нужно что-то зашифровать / расшифровать, вы просите код, запущенный в TEE, сделать это за вас, поэтому ключ остается в безопасности. В Википедии есть достойная (-ише) статья .
eldarerathis

1
@eldarerathis Что я слышал, так это то, что iPhone 6 и новее защищены от даже обновлений OEM, поскольку проверка пароля ( включая задержку / блокировку по времени) полностью реализована на аппаратном уровне. Я спрашиваю, делает ли Android что-то похожее или это просто программная блокировка - которую, конечно, можно обойти обновлением прошивки. Я также спрашиваю, существуют ли какие-либо телефоны на базе Android с загрузчиками, которые отказываются от обновлений без ввода заданного пользователем пароля, что облегчит обход периодов блокировки программного обеспечения.
Боб

1
Еще один способ перефразирования заключается в том, существует ли способ требовать, чтобы дешифрование (с паролем пользователя) происходило до того, как будут разрешены обновления. Другими словами, можно ли устанавливать (OEM, подписанные) обновления без ключа дешифрования (без обязательной очистки пользовательских данных)?
Боб

1
@ Боб Насколько мне известно, Android не требует пароль дешифрования для выполнения процесса обновления, потому что он только шифрует /userdataраздел, а не разделы, которые обновление будет фактически изменять ( /systemи /boot, как правило,). Это в значительной степени в той же лодке, что и iPhone 5 (и ниже).
eldarerathis

1
Я бы добавил, я не уверен, является ли общая задержка на попытку чем-то, что может быть «отключено» обновлением, или же Android масштабирует его искусственно. Android использует циклы scrypt во время процесса генерации ключа, поэтому его необходимо будет использовать и при дешифровании ключа, а scrypt специально разработан для ускорения, как средство против подбора. Это многое останется неизменным. Блокировка после X неудачных попыток (или масштабированная блокировка, если таковая существует) будет реализована в программном обеспечении AFAIK.
eldarerathis

-1

Полное шифрование устройства защитит ваше устройство, если вы будете использовать слишком длинный ключ для грубой силы, даже если злоумышленники смогут использовать методы грубой силы - при условии, что есть способы, позволяющие им сделать это. Сноуден говорит, что 64 символа достаточно длинны для действительно нерушимого шифрования. Таким образом, полная безопасность достижима - если вы не возражаете, вводя 64-символьную фразу-пароль каждый раз, когда вы просыпаетесь.


Известно ли вам об ограничении длины PIN-кода блокировки экрана? Рассмотрите возможность перезагрузки вашего ответа соответственно
beeshyams

Да, 16 символов - это ограничение, если вы проверяете исходный код .
Повелитель огня
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.