2008-10-14 19 views
10

J'ai couru à travers un fichier CSR (Certificate Signing Request) et j'ai besoin d'en extraire quelques informations.Comment décoder un fichier CSR?

Il existe un moyen de le décoder en utilisant .NET Framework?

+0

Il existe un outil en ligne à http://www.sslshopper.com/csr-decoder.html si vous voulez juste le regarder manuellement. – Rory

Répondre

14

Ce n'est pas .NET, mais pour une utilisation interactive, essayez les utilitaires OpenSSL. Plus précisément:

openssl req -text -in request.csr 
-4

Il n'y a aucun moyen de décoder un CSR, par conception. Si vous le pouvez, vous pouvez modifier les propriétés et vaincre le but de SSL.

+0

Généralement, les autorités de certification ne tiennent pas compte de la plupart des informations contenues dans le CSR lors de la détermination d'un nom à associer à la clé. La clé est ce qui compte; les autres propriétés ne sont que des indices pour le nom. – erickson

+0

cool, appris quelque chose de nouveau aujourd'hui – jwmiller5

+6

Vous pouvez * décoder * le CSR, sinon l'AC ne serait pas en mesure de valider et de retourner un certificat. Vous ne pouvez pas le modifier, car cela rendrait la signature invalide. –

1

Décodage CSR est facile si vous utilisez la bibliothèque OpenSSL.NET:

// Load the CSR file 
var csr = new X509Request(BIO.File("C:/temp/test.csr", "r")); 
OR 
var csr = new X509Request(@"-----BEGIN CERTIFICATE REQUEST-----..."); 

// Read CSR file properties 
Console.WriteLine(csr.PublicKey.GetRSA().PublicKeyAsPEM); 
Console.WriteLine(csr.Subject.SerialNumber); 
Console.WriteLine(csr.Subject.Organization); 
. 
. 
. 

type X509Request a des propriétés pour obtenir tout de votre fichier texte CSR.