假设我有三个证书(Base64格式)
Root
|
--- CA
|
--- Cert (client/signing/whatever)
如何从C#中的证书链中获取数据? (所有这三个证书都可能在我的计算机证书商店中)
如何使用c#从Root-CA-Cert证书(x509)链获取详细信息?
答案 0 :(得分:0)
How can I Get the data from certificate chain in C#? ... How can I Get the details from Root-CA-Cert certificate (x509) chain using c#?
您可以使用.Net' s X509Certificate Class。它有GetCertHash
,GetPublicKey
,GetSerialNumber
,GetEffectiveDateString
(即notBefore),GetExpirationDateString
(即notAfter
)等方法;以及Issuer
和Subject
等属性。
出于显示信息的目的,根证书,中间证书或服务器证书之间没有区别。 CA只是自签名(有些人放弃),这意味着Issuer
和Subject
是相同的。您也可以将您的信任植根于中间人,而且不会自签名。使用中间证书和服务器证书,Issuer
和Subject
可能会有所不同。
此外,这可能是更好的可视化:
Root or CA
|
--- Intermediate
|
--- Server (client/signing/whatever)