Как проверить с помощью аппаратного хранилища ключейAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Как проверить с помощью аппаратного хранилища ключей

Сообщение Anonymous »

Я разрабатываю устройство Android с использованием чипа Allwinner T507 и сталкиваюсь с противоречивой информацией относительно реализации хранилища ключей. На первом этапе журналы показывают, что устройство использует только программную реализацию Keymaster. Однако последующие журналы показывают, что ключи хранятся на защищенном оборудовании. Мне нужно понять, почему существует расхождение между этими журналами и как правильно определить, поддерживаются ли ключи аппаратно или нет.
Это предыдущие журналы
07-24 16:15:14.992 2053 2053 I android.hardware.keymaster@3.0-impl: Получение имени устройства keymaster по умолчанию
07-24 16:15:14.993 2053 2053 I android.hardware.keymaster@ 3.0-impl: не удалось найти ни одного модуля хранилища ключей, используя только программную реализацию.
07-24 16:15:14.995 2053 2053 I ServiceManagement: зарегистрировано android.hardware.keymaster@3.0::IKeymasterDevice/default (задержка запуска) из 148 мс)
07-24 16:15:14.995 2053 2053 I ServiceManagement: Удаление пространства имен из имени процесса android.hardware.keymaster@3.0-service в keymaster@3.0-service.
07-24 16: 15:14.996 2053 2053 I android.hardware.keymaster@3.0-service: регистрация для android.hardware.keymaster@3.0::IKeymasterDevice/default.
07-24 16:15:16.934 1971 1971 I hwservicemanager: getTransport : Невозможно найти запись android.hardware.keymaster@4.0::IKeymasterDevice/default ни в структуре, ни в манифесте устройства.
07-24 16:15:16.945 2148 2148 I keystore: Found android.hardware.keymaster@3.0:: IKeymasterDevice с именем интерфейса по умолчанию и уровнем секретного ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
07-24 16:15:16.945 2148 2148 W хранилище ключей: Безопасная реализация Keymaster не найдена, но устройство предлагает небезопасный HAL Keymaster. Использование по умолчанию.
07-24 16:15:16.962 2148 2148 I ServiceManagement: зарегистрировано android.system.wifi.keystore@1.0::IKeystore/default (задержка запуска 535 мс)
и это возвращает isInsideSecureHardware()
07-24 16:16:33.697 10784 10784 D Cryptography.kt: main_Thread::getKeySecurityHardware() : keyInfo isInsideSecureHardware = true
и самая сложная часть — это файл ключа в /data/misc/keystore/user_0
как вы можете видеть
/data/misc/keystore/user_0/.1000_chr_USRPKEY_mankey/data/misc/keystore/user_0/1000_USRPKEY_mankey
Вопросы:
  • Почему существует несоответствие между журналами, указывающими на программную реализацию, и ключами отчетов KeyInfo на защищенном оборудовании?
  • Как я могу точно определить, являются ли ключи с аппаратной поддержкой?

    Существуют ли конкретные шаги или методы для детальной проверки реализации хранилища ключей?


Подробнее здесь: https://stackoverflow.com/questions/787 ... d-keystore
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»