Экспарт сертыфіката ў натацыі ASN.1 з X509Certificate2

Я ў цяперашні час навучанне працы з сертыфікатамі і цяпер мне вельмі цікава, калі гэта магчыма, каб атрымаць натацыі ASN.1 з загружанага сертыфіката з X509Certificate2 -instance.

Я знайшоў Экспарт -метод і яна выдатна працуе, але я не бачыў possibilty змяніць кадоўку выхаднога фармату - гэта толькі ў DER-фармаце.

Ці ёсць магчымасць экспартаваць/пераўтварыць загружаны сертыфікат ў якасці сертыфіката ASCII ASN.1, нешта, як у прыкладзе ніжэй:

Certificate:
    Data:
        Version: 3 (0x2)
        Serial Number: 1 (0x1)
        Signature Algorithm: md5WithRSAEncryption
        Issuer: C=XY....
 ...

Ці ёсць канвэртар для пераўтварэння МЭДА ў звычайны тэкст?

2

2 адказы

У залежнасці ад таго, ці трэба гэта зрабіць у .Net, вы можаце быць зацікаўлены ў гэты адказ ( OpenSSL asn1parse , выкарыстоўваючы файл DER вы экспартаваны).

Калі вам трэба зрабіць гэта ў .Net, вы павінны быць у стане выкарыстаць BouncyCastle .

2
дададзена
+1 Дзякуй вялікае.
дададзена аўтар HCL, крыніца
@GregS - Гэта добра працавалі, за выключэннем таго, я павінен быў дадаць «DER-інформ», а таксама. Вы павінны пакласці, што ў якасці адказу!
дададзена аўтар Despertar, крыніца
Ці, можа быць, проста OpenSSL x509 -text -noout -in з'яўляецца тое, што ён хоча?
дададзена аўтар James K Polk, крыніца

I wrote a Gtk# tool (in C#) to do this a few years ago. The full source code is available from https://github.com/mono/mono-tools/tree/master/asn1view

Вы, верагодна, трэба толькі агульныя/PrettyPrinter.cs і агульныя/ASN1Decoder.cs , калі вы не хочаце прыгожыя імёны для OID.

EDIT: The above is a bit lower-level than X.509 certificates - but it will work for X.509 CRL and other structures you know (or not) that can be embedded into the certificates/crl.

2
дададзена
+1 Выдатна! Дзякуй! У вас ёсць блок кода, які вызначае ўжо некаторыя агульныя выкарыстоўваюцца ідэнтыфікатары для OidCache-класа?
дададзена аўтар HCL, крыніца
Не, гэта было цалкам па патрабаванні, то ёсць здабывацца/кэшуюцца па меры неабходнасці. Ото вы можаце стварыць папярэдні кэш ад запуску гэтага кода на некалькі сертыфікатаў і адправіць гэта па змаўчанні.
дададзена аўтар poupou, крыніца