提问人:kaushik 提问时间:11/7/2023 更新时间:11/7/2023 访问量:31
使用符合FIPS的充气城堡获取带有私钥的X509证书的X509证书 充气城堡 bc-fips-1.0.2
Get X509Certificate2 with Private key from Bouncy Castle X509Certificate using FIPS compliant Bouncy Castle bc-fips-1.0.2
问:
注意:- 我知道类似的问题已经得到解答,但这个问题特定于符合 FIPS 标准的充气城堡。在将问题标记为重复之前,请阅读整个问题。谢谢。
目标:我有一个用户的 BouncyCastle X509 证书,我想将私钥添加到此证书中,并希望将其转换为与 Windows 兼容的 X509Certificate2 格式。
上下文:以前我使用Portable.BouncyCastle Nugget,并且它运行良好(以下代码片段)但是现在由于FIPS合规性,我将使用bc-fips-1.0.2.dll。由于 PKCS12Store 类不再可用,我的代码不起作用,我也查看了源代码,但没有找到合适的类。(可能是我在那里遗漏了什么)
private Task<byte[]> GetCertificateWithPrivateKey(string subject, string password, Org.BouncyCastle.X509.X509Certificate bcIssuedCert, AsymmetricCipherKeyPair rsaKeyPair)
{
using (MemoryStream p12Stream = new MemoryStream())
{
Pkcs12Store selfSignedExport = new Pkcs12Store();
selfSignedExport.SetKeyEntry(subject, new AsymmetricKeyEntry(rsaKeyPair.Private), new X509CertificateEntry[] { new X509CertificateEntry(bcIssuedCert) });
selfSignedExport.Save(p12Stream, password.ToCharArray(), new SecureRandom());
byte[] baSelfSignedCert = p12Stream.ToArray();
return Task.FromResult(baSelfSignedCert);
}
}
有没有其他方法可以实现相同的目的。这对我有很大帮助。
答: 暂无答案
评论