Безопасность не является моей областью знаний, но у меня есть вопрос относительно хранения секретного ключа в хранилище ключей Android с использованием API 18 и выше. Я использую следующий код, чтобы попытаться сохранить свой ключ:
KeyStore ks = KeyStore.getInstance("AndroidKeyStore");
ks.load(null);
KeyStore.SecretKeyEntry sKeyEntry = new KeyStore.SecretKeyEntry(ivKey);
ks.setEntry(ALIAS, sKeyEntry, null); // This is where the issue is
Я понимаю, что "null" должен быть параметром KeyProtection, который я создаю, но он недоступен для API 18. Есть ли обходной путь для этой проблемы? Мне было трудно найти что-нибудь, что работает.
EDIT Я должен упомянуть, что если оставить его равным нулю, возникает ошибка:
java.security.KeyStoreException: Protection parameters must be specified when importing a symmetric key