De StackOverflow : Comment installer un certificat CA de confiance sur un appareil Android ?
J'ai passé beaucoup de temps à essayer de trouver une réponse à ce problème (j'ai besoin qu'Android puisse voir les certificats StartSSL). Conclusion : Android 2.1 et 2.2 vous permettent d'importer des certificats, mais uniquement pour une utilisation avec le WiFi et le VPN. Il n'y a pas d'interface utilisateur pour mettre à jour la liste des certificats racine de confiance, mais il est question d'ajouter cette fonctionnalité. Il n'est pas clair s'il existe une solution de contournement fiable pour mettre à jour et remplacer manuellement le fichier cacerts.bks.
Détails et liens : http://www.mcbsys.com/techblog/2010/12/Android-certificates/ . Dans ce post, voir le lien vers bug Android 11231 --Vous pouvez ajouter votre vote et votre requête à ce bug.
11231 a été fermé en novembre 2011 et le statut était Libéré pour Android 4.0 ICS.
Voici les notes associées à la Libéré statut :
L'ICS s'efforce de mettre en œuvre la plupart, sinon la totalité, des points mentionnés dans ce numéro. Si j'ai manqué quelque chose, j'ouvrirai des numéros plus spécifiques pour combler les lacunes.
Quelques détails ci-dessous, je prévois un billet de blog plus formel plus tard. Les éléments suivants devraient tous être visibles dans le SDK Android 4.0 si vous voulez les essayer et donner votre avis.
Changements dans les paramètres :
- Les autorités de certification (CA) du système sont désormais visibles dans Paramètres > Sécurité > Références de confiance.
- les AC du système peuvent désormais être désactivées et réactivées
- les utilisateurs peuvent installer leurs propres AC à partir de Paramètres > Sécurité (ainsi que d'autres mécanismes tels que le navigateur ou l'ouverture d'une pièce jointe à un courriel.
- les AC des utilisateurs peuvent être consultées et supprimées dans Paramètres > Sécurité > Références de confiance
- au lieu d'un code PIN distinct à 8 caractères pour le stockage des justificatifs, l'accès est désormais contrôlé via l'écran de verrouillage
Nouvelle API KeyChain
- KeyChain.createInstallIntent permet aux applications de demander l'installation d'une créance, en rendant publique l'interface utilisée par les paramètres pour demander l'installation. Les utilisateurs doivent confirmer les demandes d'installation comme auparavant.
- KeyChain.choosePrivateKeyAlias/getPrivateKey/getCertificateChain permettent aux applications de demander des clés privées et leurs certificats associés pour l'utilisation de l'application. un cas d'utilisation commun serait l'authentification du certificat du client avec https.
Courriel :
- La messagerie utilise désormais l'API KeyChain pour permettre l'authentification par certificat client pour les comptes Exchange.
Navigateur
- Le navigateur utilisera désormais le KeyChain pour demander un certificat client lorsque le serveur en demande un pour l'authentification.
En mars 2014, une demande d'amélioration a été créée. Permettre aux utilisateurs d'installer leurs propres certificats d'AC .
De nombreux utilisateurs (y compris des entreprises) utilisent des certificats auto-signés pour SSL/TLS, soit parce qu'ils ne veulent pas payer pour cela, soit parce qu'ils ne font pas confiance aux autres entreprises et veulent le faire eux-mêmes (en fait, il n'y a aucune raison d'acheter un certificat lorsqu'il n'est pas nécessaire que les internautes anonymes fassent confiance à votre serveur).
Actuellement, il est possible d'installer un certificat d'autorité de certification personnalisé dans Android, mais il est détecté comme "certificat utilisateur", ce qui semble être destiné aux certificats côté client. En conséquence, ces certificats sont affichés comme "certificats d'utilisateur" dans l'interface graphique et depuis Android 4.4, un terrible "Network may be monitored" a été implémenté.