如何从证书中读取 X509v3 扩展字段?我迭代AllKeys
了 HttpClientCertificate
但它只包含证书的常规字段而不是扩展字段。
HttpClientCertificate cs = Request.ClientCertificate;
foreach (String s1 in cs.AllKeys)
Response.Write( s1 + ":" + cs[s1] + "<br>");
那么如何阅读扩展字段呢?
如何从证书中读取 X509v3 扩展字段?我迭代AllKeys
了 HttpClientCertificate
但它只包含证书的常规字段而不是扩展字段。
HttpClientCertificate cs = Request.ClientCertificate;
foreach (String s1 in cs.AllKeys)
Response.Write( s1 + ":" + cs[s1] + "<br>");
那么如何阅读扩展字段呢?
查看HttpClientCertificate和X509Certificate2的文档,看起来您应该能够通过使用 的Certificate属性以 ASN.1 格式获取整个证书的字节数组HttpClientCertificate
。然后使用这个字节数组通过这个构造函数X509Certificate2
来实例化一个对象。
一旦有了X509Certificate2
对象,就可以通过Extensions属性获取扩展。我不是肯定的,但是当对对象调用toString()方法时,也可能会列出扩展X509Certificate2
。