[英]Cannot import X509 v3 certificate
我需要验证以纯文本形式出现的X509v3证书,并且我正在尝试使用以下代码:
public static bool Validate(string certText)
{
var bytes = new byte[certText.Length * sizeof(char)];
Buffer.BlockCopy(certText.ToCharArray(), 0, bytes, 0, bytes.Length);
try
{
var cert = new X509Certificate(bytes);
var cert2 = new X509Certificate2(cert);
return cert2.Verify();
}
catch(CryptographicException cex)
{
return false;
}
}
我在此行上收到一条消息“无法找到所需的对象”的异常:
var cert = new X509Certificate(bytes);
这是我的证书:
Bag Attributes
Microsoft Local Key set: <No Values>
localKeyID: 01 00 00 00
friendlyName: le-cb9ddb3f-ae3b-49a3-8f44-f106f442974d
Microsoft CSP Name: Microsoft RSA SChannel Cryptographic Provider
Key Attributes
X509v3 Key Usage: 10
-----BEGIN PRIVATE KEY-----
*****
-----END PRIVATE KEY-----
Bag Attributes
localKeyID: 01 00 00 00
friendlyName: xn--drmtteslger-z8ar8v_dk_2014-09-05
subject=/C=DK/postalCode=8920/L=Randers/street=Normansvej 1/O=DanDomain A/S/OU=Webshop/OU=Hosted by Dandomain A/S/OU=InstantSSL/CN=d\xC3\xB8rm\xC3\xA5ttes\xC3\xA6lger.dk
issuer=/C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=COMODO High-Assurance Secure Server CA
-----BEGIN CERTIFICATE-----
*****
-----END CERTIFICATE-----
我尝试了不同的方法来从text / bytes / file / etc创建证书,但是它们都在同一时间失败。
看起来问题出在部分顺序中,当我交换证书和私钥部分时,一切都像一个符咒。
UPD:C#无法从PEM文件导入私钥,因此他将直接忽略此部分,但是它要求证书部分是文件中的第一部分。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.