[英]Creating certificate issued based on self-signed root certificate with BouncyCastle
我一直在使用這個 repo ,它允許創建基於自簽名根證書的證書。
我的根證書以 MyCARoot.cer 和 MyCARoot.pvk 的形式提供給我。它們是之前使用 makecert 創建(並已部署)的。 因此,為了讓我使用上述鏈接中的代碼,我必須使用 pvk2pfx.exe 在 .pfx 中組合 .cer 和 .pvk 文件
我的問題是,生成證書並將其導入到個人存儲后,它似乎無效。 在 MMC 的認證路徑選項卡上,它說:
找不到證書的頒發者
注意:我對代碼所做的唯一更改是使用的密碼。
該來源的問題在於它應該這樣做:
X509Certificate issueCert = Org.BouncyCastle.Security.DotNetUtilities.FromX509Certificate(issuerCertificate);
var authorityKeyIdentifier = new AuthorityKeyIdentifierStructure(issueCert);
certificateGenerator.AddExtension(X509Extensions.AuthorityKeyIdentifier.Id, false, authorityKeyIdentifier);
而不是這個:
var authorityKeyIdentifierExtension =
new AuthorityKeyIdentifier(
SubjectPublicKeyInfoFactory.CreateSubjectPublicKeyInfo(issuerKeyPair.Public),
new GeneralNames(new GeneralName(issuerDN)),
issuerSerialNumber);
certificateGenerator.AddExtension(
X509Extensions.AuthorityKeyIdentifier.Id, false, authorityKeyIdentifierExtension);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.