Из системы Android хранилища ключей документы:
Поддерживаемые устройства, работающие Android 9 (уровень API 28) или выше, могут иметь StrongBox Keymaster, реализацию HAL Keymaster, который находится в аппаратном модуле безопасности. Модуль содержит следующее:
[...]
* Защищенное хранилище.
[...]
При проверке ключей, хранящихся в StrongBox Keymaster, система подтверждает целостность ключа с помощью Trusted. Среда выполнения (TEE).
[...]
При создании или импорте ключей с использованием класса KeyStore вы указываете предпочтение хранения ключа в мастере ключей StrongBox, передавая true в метод setIsStrongBoxBacked ().
В моем понимании это означает, что когда вы генерируете ключ и вызываете keyGenParameterSpecBuilder.setIsStrongBoxBacked(true)
для конфигурации ключа, вы можете убедиться, что он поддерживается TEE
. Если нет доступного TEE
, он выдаст StrongBoxUnavailableException
.
. Чтобы проверить, есть ли в наличии TEE
, вы можете просто попытаться сгенерировать ключ таким образом и посмотреть, работает ли он.