Хранилище учетных данных с аппаратной поддержкой на Galaxy Nexus

Во-первых, я надеюсь, что выберу правильную биржу стека для этого вопроса.

Android 4.3 представляет «аппаратное» хранилище учетных данных. Если я перейду в «Настройки» -> «Безопасность» в заголовке «Учетные данные-Хранилище», там будет (не интерактивная) опция «Тип хранилища», для которой установлено значение «Только программное обеспечение». Как установить его на «Аппаратное обеспечение»?

Я уже удалил/сбросил хранилище учетных данных и попробовал его с различными параметрами блокировки экрана (пин-код, пароль, шаблон), но я не могу изменить этот параметр на «Аппаратное обеспечение». Разве Galaxy Nexus не способен на это?

Ответы (2)

«Хранилище учетных данных с аппаратной поддержкой», также известное как «Хранилище ключей Android», имеет аппаратную поддержку только в том случае, если аппаратное обеспечение на устройстве содержит необходимые аппаратные компоненты. Когда необходимое оборудование недоступно, оно возвращается к программному хранилищу.

Android также теперь поддерживает аппаратное хранилище для ваших учетных данных KeyChain, обеспечивая большую безопасность, делая ключи недоступными для извлечения. То есть, как только ключи находятся в хранилище ключей с аппаратной поддержкой (Secure Element, TPM или TrustZone), их можно использовать для криптографических операций, но материал закрытого ключа нельзя экспортировать. Даже ядро ​​ОС не может получить доступ к этому ключевому материалу. Хотя не все устройства на базе Android поддерживают аппаратное хранилище , во время выполнения можно проверить, доступно ли аппаратное хранилище.

Из Android 4.3 APIs — аппаратное хранилище учетных данных . Мой акцент.

Наконец, есть API и даже поле системных настроек, которое позволяет вам проверить, является ли хранилище учетных данных аппаратным (Nexus 4, Nexus 7) или только программным (Galaxy Nexus).

Из улучшений хранилища учетных данных в Android 4.3

Это новая функция, и поэтому вполне вероятно, что аппаратное обеспечение есть только в более новых устройствах более высокого уровня. Согласно этому, Galaxy Nexus не имеет необходимого оборудования. Nexus 4 имеет полную аппаратную поддержку для этого;

Как вы уже поняли (sic), Nexus 4 основан на SoC Qualcomm Snapdragon S4 Pro APQ8064. Как и большинство последних SoC ARM, он поддерживает TrustZone , и Qualcomm реализует свою среду безопасного выполнения (QSEE) поверх него.

Из улучшений хранилища учетных данных в Android 4.3

Технология ARM TrustZone аналогична аппаратному обеспечению TPM , используемому на оборудовании, совместимом с ПК с процессором Intel x86, для обеспечения аппаратно-защищенной области хранения учетных данных. И точно так же, как TPM, когда он был впервые представлен, требуется время, чтобы просочиться во все новые телефоны.

Итак, в случае с Nexus 4 «железо» — это просто ARM SoC. Возможны ли другие реализации? Теоретически аппаратная реализация мастера ключей не обязательно должна основываться на TrustZone. Можно использовать любое выделенное устройство, которое может безопасно генерировать и хранить ключи, обычно подозреваемыми являются встроенные элементы безопасности (SE) и доверенные платформенные модули. Однако не существует основных устройств Android с выделенными TPM, а последние флагманские устройства начали поставляться без встроенных SE.

Из улучшений хранилища учетных данных в Android 4.3

Итак, нет, Galaxy Nexus не может поддерживать аппаратное хранилище учетных данных, потому что в нем нет необходимого оборудования.

То есть это означает, что любое устройство с S4 Pro (Xperia Z и т. д.) по существу имеет аппаратные требования? Есть ли какой-либо ресурс, в котором перечислены SOC с поддержкой TrustZone? В любом случае, и этот ответ, и ваше имя пользователя превосходны!
@dotVezz Это также зависит от того, правильно ли все настроил производитель, поэтому возможно иметь телефон с SoC, который имеет аппаратное обеспечение, но не может его использовать.
точно так же, как у galaxynexus есть SE в чипе NFC. Возможно, это могло бы удовлетворить все требования к оборудованию, но не используется для этого. В любом случае, отличный ответ на грустную историю
На самом деле Galaxy Nexus имеет аппаратное хранилище учетных данных с версии 4.1. Это просто не включено в производственных сборках. Кроме того, TrustZone — это программная вещь, для нее не требуется ничего, кроме чипа ARM с поддержкой TZ, которым являются почти все последние. Для TPM требуются настоящие защищенные чипы. Чтобы воспользоваться преимуществами TZ, необходимо установить безопасную ОС вместе с соответствующими драйверами и способом связать ее с Android. Конечно, это требует от производителя интеграции.
@nikolay у тебя есть ссылки на это? И ваш комментарий кажется немного запутанным в отношении того, что такое аппаратное и программное обеспечение. Думали ли вы о том, чтобы написать полный ответ на этот вопрос, чтобы у вас было больше места для объяснений и включения источников / ссылок?
Ссылка: nelenkov.blogspot.com/2012/07/… . И, да, ТЗ не является ТЗМ.

На самом деле Galaxy Nexus имеет аппаратное хранилище учетных данных с версии 4.1. Это просто не включено в производственных сборках.

Подробности читайте здесь: http://nelenkov.blogspot.com/2012/07/jelly-bean-hardware-backed-credential.html

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

https://android.googlesource.com/device/samsung/tuna/+/b74801dc22bb4945ddf79b2e12e6328a862d68c3