Во-первых, я надеюсь, что выберу правильную биржу стека для этого вопроса.
Android 4.3 представляет «аппаратное» хранилище учетных данных. Если я перейду в «Настройки» -> «Безопасность» в заголовке «Учетные данные-Хранилище», там будет (не интерактивная) опция «Тип хранилища», для которой установлено значение «Только программное обеспечение». Как установить его на «Аппаратное обеспечение»?
Я уже удалил/сбросил хранилище учетных данных и попробовал его с различными параметрами блокировки экрана (пин-код, пароль, шаблон), но я не могу изменить этот параметр на «Аппаратное обеспечение». Разве Galaxy Nexus не способен на это?
«Хранилище учетных данных с аппаратной поддержкой», также известное как «Хранилище ключей 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 не может поддерживать аппаратное хранилище учетных данных, потому что в нем нет необходимого оборудования.
На самом деле 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
точкаВезз
Дэн Халм
Рафаэль Т
Николай Еленков
GATrawn
Николай Еленков