2017-10-20 16 views
0

Vous avez besoin de conseils sur la question ci-dessous, car j'ai essayé de le faire au cours des deux derniers jours.Créer un certificat X509 à partir du certificat .p12 ou .pem

Scénario:

De côté client, j'ai produit mon système certificat spécifique qui est de type P12. Cependant, dans mon code j'ai besoin d'insérer le certificat X509 comme paramètre d'entrée.

Ma question est existe-t-il un moyen de convertir/créer un certificat X509 à l'aide du certificat privé .p12. Ce serait une aide précieuse si quelqu'un peut partager des liens/articles ou des blogs, afin que je puisse avoir une idée à ce sujet.

Appréciez votre aide !!!

+0

Vous devriez poser une question spécifique pour un problème de programmation particulier. Puisque Stack Overflow cache la raison Close de vous: * "Les questions nous demandant de recommander ou de trouver un livre, un outil, une bibliothèque de logiciels, un tutoriel ou autre ressource hors site sont hors sujet pour Stack Overflow car elles ont tendance à attirer les réponses Au lieu de cela, décrivez le problème et ce qui a été fait jusqu'à présent pour le résoudre. "* – jww

Répondre

1

Un PKCS12 est un sac de certificats et de clés X509. Un des certificats dans le sac va être le certificat X509 que vous voulez.

Vous pouvez extraire manuellement le certificat du PKCS12 à l'aide de la ligne de commande OpenSSL, vous pouvez également le faire via le code mais pour vous aider, j'ai besoin de savoir quelle langue utiliser.

Basé sur le lien, il semble que vous pourriez utiliser C#, si donc vous voulez faire quelque chose de similaire à:

X509Certificate2 mycert = new X509Certificate2("my.p12", "public", X509KeyStorageFlags.DefaultKeySet); 
+0

Merci pour la réponse rapide. Je suis OK pour extraire manuellement le contenu. Quand j'ai converti le certificat PKCS12 au format .pem, je vois qu'il y a 4 attributs Bag différents avec un corps de certificat différent (contenu à l'intérieur ----- BEGIN CERTIFICATE ----- et ----- END CERTIFICATE --- -). Aussi j'ai écrit le code en C# et vous pouvez le trouver à partir de ce [lien] (https://stackoverflow.com/questions/46722997/saml-assertion-in-a-xml-using-c-sharp) – Aritra

+0

Pour manuellement obtenir le certificat que vous feriez quelque chose comme: openssl pkcs12 -in keyStore.pfx -out keyStore.pem -nodes – rmhrisk