gpt4 book ai didi

c# System.Security.Cryptography.X509Certificates.X509ContentType.Cert 这是 DER 吗?

转载 作者:太空宇宙 更新时间:2023-11-03 15:25:15 24 4
gpt4 key购买 nike

我如何确定我导出的证书文件是 DER 编码的?有没有办法检查文件?

我可以将加载到内存中的证书导出到文件

string strFilename = _rksvpath + cert.GetSerialNumberString() + ".cer";
byte[] bytesCertExport = cert.Export(System.Security.Cryptography.X509Certificates.X509ContentType.Cert);
File.WriteAllBytes(strFilename, bytesCertExport);

文件没问题,我可以用 certutil 证明这一点

C:\>certutil -dump C:\temp\0104A73D4557FCE026120AC356.cer
X.509-Zertifikat:
Version: 3
Seriennummer: 0104a73d4557fce026120ac356
Signaturalgorithmus:
Algorithmus Objekt-ID: 1.2.840.113549.1.1.11 sha256RSA
Algorithmusparameter: 05 00
...

但是,我无法在 certutil 的输出或 Windows 证书查看器(使用以下命令打开)中找到任何有关编码的信息

"C:\Windows\system32\rundll32.exe" cryptext.dll,CryptExtOpenCER C:\temp\0104A73D4557FCE026120AC356.cer

最佳答案

X.509 证书始终使用可分辨编码规则 (DER) 进行编码。

唯一的区别是 DER 值在文件中的存储方式,可以是精确的二进制副本,也可以是使用 Base64 对二进制数据进行编码。标准工具不会告诉您使用什么文件格式(二进制或 Base64)。您可以读取文件的第一个字节。如果它是 ASCII 48,则文件是证书的精确二进制副本,否则,二进制副本是 base64 编码的,有或没有 PEM 页眉/页脚。

关于c# System.Security.Cryptography.X509Certificates.X509ContentType.Cert 这是 DER 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35599268/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com