I'm trying to store the certificates of the client in the Android key store and then parse it to a key manager for it to send it to server. We have a setup where the client needs to present his certificate as well so that's why I need that. Currently I'm working on it and I can't get it to work
KeyStore exception
android.os.ServiceSpecificException: (code 7)
Preferred provider doesn't support key:
java.security.InvalidKeyException: Keystore operation failed
Caused by: android.security.KeyStoreException: Incompatible digest
Could not find provider for algorithm: NONEwithRSA
javax.net.ssl.SSLHandshakeException: Handshake failed
the current setup that I have is that I generated a keypair in the android key store and then generated a Certificate signing request which was then signed by a Certificate authority and i stored it into the android key store . This part worked fine because I can grab the certificate and I tested this manually. But the rest doesn't work it gives out the errors that I just showed. Everywhere I looked I can't find the solution to this problem and I tried everything already.
Any help is welcome!
PrivateKeyinterface and the SSL/TLs handling on Android is implemented in BoringSSL a fork of OpenSSL thus implemented in native code and not Java. BoringSSL needs full access to the private key which is denied by AndroidKeyStore. Therefore I don't think that there is a way to use a private key from AndroidKeyStore for establishing an TLS connection.