Hi, I would like to programatically find client ssl certificate (I'm using it to authenticate api calls) installed via Settings -> Security -> Install from SD Card.I tried to search in different keystores (AndroidCAStore, AndroidKeyStore, BCPKCS12, BKS, BouncyCastle, PKCS12), only AndroidCAStore returns certificates (but only CAs, no client certs).
I believe there is some way to get them, because built-in VPN client is able to list them.
Any help or guide would appreciated,
Adam Łamarz
1 Replies
Adam,
The system will not allow you to enumerate certificates; you may, however, ask the user to select a certificate from those installed system-wide using the KeyChain API. The OS will show a system-managed dialog prompting the user to choose a certificate (or install one) and you'll get back a reference to that key. There are provisions in the system for a device management app to hook into this process (for example, to return a specific result to an application) but you cannot otherwise modify this dialog.
If the certificate will only be used with your application (it's not needed by the rest of the system), another potential option is for your app to manage it with the KeyStore API.
This link might be helpful.
Javier Molina
Technical Architect, Kutir Mobility
Posted on behalf of Zebra Technologies