У меня есть объект Org.BouncyCastle.X509.X509Certificate в библиотеках классов Bouncy Castle. Как я могу получить сертификат эмитента сертификата (или корневой сертификат эмитента) и экспортировать его?
cert.CertificateStructure.Issuer - это класс X509Name, но не класс X509Certificate.
Кроме того, в среде .Net я могу реализовать следующий код:
using System.Security.Cryptography.X509Certificates;
namespace Name {
class Class1 {
public static X509Certificate2 GetIssuer(X509Certificate2 leafCert) {
if (leafCert.Subject == leafCert.Issuer) { return leafCert; }
X509Chain chain = new X509Chain();
chain.ChainPolicy.RevocationMode = X509RevocationMode.NoCheck;
chain.Build(leafCert);
X509Certificate2 issuer = null;
if (chain.ChainElements.Count > 1) {
issuer = chain.ChainElements[1].Certificate;
}
chain.Reset();
return issuer;
}
}
}