Retour à la Foire aux questions
Comment exporter un certificat du navigateur?
La génération d'un nouveau certificat et l'installation sous Internet Explorer, poste Vista SP2 ne fonctionne pas. Le certificat installé ne peut pas être exporté avec sa clé privée; l'option est grisée.
Solution
Même procédure avec Firefox 21. Le certificat ne s'installe pas si on demande à installer un certificat déjà généré (en cliquant sur "Install certificate" rien ne se passe). En revanche, si on génère un nouveau certificat et que l'on installe dans la foulée, le certificat personnel est installé sous Firefox ainsi que les certificats Root CAcert.
A partir de là on peut bien sauvegarder ce certificat au format PKCS12 et l'utiliser avec un outil de signature de PDF par exemple (donc indépendant de Microsoft).
Fin de réponse pour utilisateurs
Commentaire technique
La conversation suivante laisse penser que c'est un problème connu, et qu'il serait du fait du site de CAcert qui permet la génération du certificat. Des paramètres particuliers doivent certainement être passés au controle ActiveX qui génère le certificat. http://social.technet.microsoft.com/Forums/en-US/w7itprosecurity/thread/44c4b5e9-8ab7-4fe6-9903-73da744f94ca
D'après le code de la page "http://www.cacert.org/keygenIE.js" et d'après la documentation (http://msdn.microsoft.com/en-us/library/windows/apps/hh464967.aspx), il semble que la propriété Exportable soit à la valeur par défaut (ExportOption.NotExportable) car elle n'est pas définie au moment de la génération du certificat (la ligne suivante est commentée) //cenroll.GenKeyFlags = cenroll.GenKeyFlags | 0x1; //CRYPT_EXPORTABLE
Ainsi, j'imagine que cet attribut de sécurité n'était pas pris en compte avant Vista, et qu'il est maintenant suivi lors de la génération d'un certificat...
On peut essayer la méthode proposée dans le premier lien ci-dessus (avant dernier post de blog MSDN du Sunday, October 30, 2011 9:36 PM) qui devrait permettre d'exporter le certificat.