9 votes

Quel est le problème avec ce fichier pkcs12 (pfx) ?

J'ai créé une autorité de certification privée et formé un fichier de certificat pkcs12 pour le test. J'ai fait cela sur ma boîte Linux avec openssl by :

  1. openssl req -config /etc/openssl.cnf -subj /CN=aa1@2C/O=Ruckus Wireless, Inc./ST=CA/C=US -batch -new -nodes -key users/2C.key -out users/2C.csr
  2. openssl ca -config /etc/openssl.cnf -extensions client_cert -batch -in users/2C.csr -out users/2C.crt
  3. openssl pkcs12 -export -out users/2C.pfx -inkey users/2C.key -in users/2C.crt -certfile cacert.pem -passout stdin

Après cela, j'ai copié le 2c.pfx sur ma machine Windows 7 et j'ai essayé de l'installer, mais le message d'erreur est apparu :

Fichier d'objets de sécurité de clé publique non valide : Ce fichier n'est pas valide pour l'utilisation suivante : échange de renseignements personnels.

Quelle en est la raison ? Ai-je créé un fichier pfx cassé ?

4voto

Natrium Points 14040

J'ai aussi eu le message

Invalid Public Key Security Object File : Ce fichier n'est pas valide pour l'utilisation suivante : Personal Information Exchange.

Le problème était que le fichier de p12 était sur un partage de réseau qui était mappé comme un lecteur. En copiant le fichier sur mon vrai disque dur (C :), le problème a été résolu.

3voto

jww Points 9514

Cette procédure est quelque peu obscure (je ne me souviens pas l'avoir vue, mais bon...). Tout d'abord, assurez-vous que vous importez le certificat dans le bon magasin. La plupart des erreurs d'importation que j'ai rencontrées sont dues à un mauvais magasin. Je crois que vous devez installer le certificat dans le magasin des autorités de certification racine de confiance de la machine locale (les autorités de certification intermédiaires ne fonctionnent pas). Si ce n'est pas un problème de magasin....

Deuxièmement, essayez ceci à partir des forums de Microsoft. Impossible d'importer un certificat (fichier p12 ou pfx) . (Je l'ai reproduit au cas où Microsoft réorganiserait son site web. Mais pour être clair, c'est la solution de quelqu'un d'autre) :

secedit /configure /cfg %windir%\inf\defltbase.inf /db defltbase.sdb /verbose

À propos, je pense que vous pouvez vérifier si elle est bien formée selon les outils Microsoft avec ce qui suit. Je n'ai pas de machine Windows à portée de main pour le tester.

certutil -dump 2C.pfx

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X