2016-07-15 40 views
4

我試圖創建X509Certificate2使用下面的代碼串private_key找不到請求的對象。當創建X509certificate2

byte[] key = Convert.FromBase64String(private_key); 
X509Certificate2 certificate = new X509Certificate2(key); 

當最後一行執行後拋出以下異常:

System.Security。 Cryptography.CryptographicException找不到請求的對象

有人知道如何o解決這個問題?

+0

我不認爲你應該用私鑰初始化X509Cert https://msdn.microsoft.com/en-us/library/ms148413(v=vs.110).aspx –

+0

http:// paulstovell.com/blog/x509certificate2看提示5. –

+0

這可能有所幫助:http://stackoverflow.com/questions/18462064/associate-a-private-key-with-the-x509certificate2-class-in-net –

回答

0

私鑰通常不是以X.509證書的形式。您可以將其作爲PFX或P12文件找到,您應該將其導入X509CertificateCollection以獲取私鑰作爲X509Certificate實例。

另一種選擇(如果您擁有的私鑰是PFX或P12文件的形式)是將私鑰加載到Windows本地證書存儲中,然後使用X509Store類加載它,它會給你私鑰爲X509Certificate實例。

由於您有PEM文件,因此請參閱此Convert a CERT/PEM certificate to a PFX certificate以瞭解如何將其轉換爲PFX文件。

相關問題