Список смартфонов Android, которые поддерживают Android StrongBox на API 28 (Android Pie) - PullRequest
2 голосов
/ 14 апреля 2019

Мне нужен список телефонов Android, которые поддерживают безопасный элемент и StrongBox в Android 9. Где или как я могу найти это?

Я попробовал приведенный ниже код с Samsung Galaxy S9, а также с AVD Google Pixle XL API 28

KeyPairGenerator kpg = null;
kpg = KeyPairGenerator.getInstance(
KeyProperties.KEY_ALGORITHM_RSA, "AndroidKeyStore");
kpg.initialize(new KeyGenParameterSpec.Builder("keystore1", KeyProperties.PURPOSE_SIGN)
                    .setCertificateSerialNumber(BigInteger.valueOf(1L))
                    .setCertificateSubject(new X500Principal("CN=MyCompany"))
                    .setIsStrongBoxBacked(true) /* Enable StrongBox */
                    .setInvalidatedByBiometricEnrollment(true)
                    .build());
            KeyPair kp = kpg.generateKeyPair();
            KeyFactory factory = KeyFactory.getInstance(KeyProperties.KEY_ALGORITHM_EC, "AndroidKeyStore");
KeyInfo keyInfo = factory.getKeySpec(kp.getPrivate(), KeyInfo.class);
keyInfo.isInsideSecureHardware();

Выдает исключение ниже:

android.security.keystore.StrongBoxUnavailableException: не удалось сгенерировать пару ключей

1 Ответ

2 голосов
/ 10 июля 2019

В настоящее время очень немногие устройства поддерживают StrongBox, и, к сожалению, информации, которую вы можете найти в Интернете, в лучшем случае недостаточно.

Хотя вы правы, в соответствии с Android устройства под управлением Android 9.0 должны поддерживатьStrongbox, Strongbox - это отдельный аппаратный компонент, и я предполагаю, что только устройства, запускаемые с Android 9.0, могут иметь аппаратное обеспечение.

Существует репозиторий GrapheneOS / AttestationSamples , который собирает информацию о безопасности.информация о нескольких устройствах.

Обратите внимание, что только устройства Google Pixel 3 поддерживают сейф.Вы можете увидеть сертификаты аттестации Strongbox в папках.

...