这是一个控制台应用程序,我正在使用.net框架4。 当我尝试从证书中获取私钥时,我将其视为空,不知道为什么会发生这种情况?
B
答案 0 :(得分:2)
通常,扩展名为“.cer”的文件只是证书,即公钥和一些关联的元数据。 PFX / PKCS#12文件也可以包含私钥。
您可以检查myCert2.HasPrivateKey
以确定是否为证书加载了任何私钥。由于myCert2.PrivateKey
只应在HasPrivateKey为false
时返回null,我很确定您会发现系统根本不知道您的证书的私钥。
答案 1 :(得分:1)
目前,此属性仅支持RSA或DSA密钥,因此它返回RSACryptoServiceProvider或DSACryptoServiceProvider对象。如果没有私钥与证书关联,则返回null。