![](/img/trans.png)
[英]Read ECC private key PEM into AsymmetricCipherKeyPair c# bouncy castle
[英]How to Read a Pem Cert and Private Key Files and create Bouncy Castle X509Certificate and Bouncy Castle AsymmetricKeyParameter dotnet core?
如何將未加密的 PEM 證書及其關聯的私鑰讀取到可用的 C# Bouncy Castle 對象中? 我還沒有找到使用 Bouncy Castle 執行此操作的任何簡單方法。 使用 dotnet security 的 X509Certificate2 更容易做到(只需將文件作為字節傳遞給它的構造函數),但是轉換為充氣城堡X509Certificate
並將關聯的私鑰轉換為AsymmetricKeyParameter
確實很麻煩。 使用 Bouncy Castle,您必須了解用於簽名的算法類型。 從具有私有和公共部分的 Pem 獲得 BouncyCastle 證書的最簡單方法是什么?
這就是我想出的。 function 看來是正確的。 我希望有 Bouncy Castle - Cryptic 密碼學庫的注釋。
public static class PemFileReader{
public static X509Certificate ReadCert(string pathToPemFile)
{
X509CertificateParser x509CertificateParser = new X509CertificateParser();
var cert = x509CertificateParser.ReadCertificate(File.ReadAllBytes(pathToPemFile));
return cert;
}
public static AsymmetricKeyParameter ReadPemPrivateKey(string pathToPemFile)
{
StreamReader streamReader = File.OpenText(pathToPemFile);
Org.BouncyCastle.Utilities.IO.Pem.PemReader pemReader = new Org.BouncyCastle.Utilities.IO.Pem.PemReader(streamReader);
PemObject pemObject = pemReader.ReadPemObject();
PrivateKeyInfo privateKeyInfo = PrivateKeyInfo.GetInstance(pemObject.Content);
AsymmetricKeyParameter privateKeyBC = PrivateKeyFactory.CreateKey(privateKeyInfo);
return privateKeyBC;
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.