Есть ли способ генерировать CSR ключей, хранящихся в Android KeyStore? Я знаю, что вы можете сгенерировать ключи, затем сгенерировать CSR и, наконец, сохранить ключи в Android KeyStore, но возможно ли также сгенерировать CSR в ранее сгенерированной точке и уже внутри хранимых ключей KeyStore?
Я попытался сделать это точно так же, как вы делали бы это со свежесгенерированными ключами, используя Spongycastle. Но я столкнулся с проблемой при создании JCAContentSigner. Запуск этого кода:
new JcaContentSignerBuilder("SHA256WithRSAEncryption").setProvider("SC").build(privateKey)
Будет выдано исключение:
org.spongycastle.operator.OperatorCreationException: cannot create signer: Supplied key (android.security.keystore.AndroidKeyStoreRSAPrivateKey) is not a RSAPrivateKey instance
Без установки SpongyCastle в качестве поставщика безопасности, я получаю это исключение:
org.spongycastle.operator.OperatorCreationException: cannot create signer: Keystore operation failed
Итак, мой вопрос, возможен ли один из этих трех вариантов:
приведение android .security .keystore.AndroidKeyStoreRSAPrivateKey в экземпляр RSAPrivateKey?
заставить его работать без установки SpongyCastle в качестве поставщика безопасности?
создание CSR без SpongyCastle?