当前位置: 首页 > news >正文

把JAVA的数字信封翻译成C#.NET的

语句1:

SubjectKeyIdentifier sid = cert.getSubjectKeyIdentifier();

cert 是JAVA的cfca.sadk.x509.certificate.X509Cert。

.NET 这边是 X509Certificate2 cert ,先转成BC库的 X509。从X509的公钥中提取sid。

// 首先转换为 BouncyCastle 的 X509Certificate            
var bcCert = new X509CertificateParser().ReadCertificate(cert.GetRawCertData());
// 主题密钥标识符 (SKI)。 JAVA BC 库写法:SubjectKeyIdentifier sid = cert.getSubjectKeyIdentifier();
SubjectKeyIdentifier sid = new Org.BouncyCastle.X509.Extension.SubjectKeyIdentifierStructure(bcCert.GetPublicKey());

 

语句2:

AlgorithmIdentifier keyEncAlg = cert.getCertStructure().getSubjectPublicKeyInfo().getAlgorithm();

.NET这边:

AlgorithmIdentifier keyEncAlg= bcCert.CertificateStructure.SubjectPublicKeyInfo.AlgorithmID;

 

-