我的证书的私钥在哪里

Ost*_*ati 12 ssl iis-7 ssl-certificate

我刚从GoGaddy那里获得了证书.它出现在.ZIP文件中,其中包含两个文件:

"certificate.p7b"和"cetificate.crt"

我已经安装了它们,但是当我尝试在其中任何一个上查找私钥时,我得到NULL,这意味着它们没有私有.

当然,所有这些都是更大问题的一部分,我正在尝试为AZURE网站安装证书而且它不需要.crt文件,所以我需要将它导出到.pfx

顺便说一句,我在一台工作笔记本电脑上,它有一些预装的证书,所有这些都有私钥.这是我用来查找私钥的代码:

X509Store store = new X509Store(StoreName.My);

store.Open(OpenFlags.MaxAllowed);

foreach (var certin store.Certificates)
{
    var pk = cert.PrivateKey;
}
Run Code Online (Sandbox Code Playgroud)

私钥是什么,我如何获得它?

use*_*421 13

你已经拥有它了.您在此过程中所做的第一件事就是生成密钥对.然后,您从密钥对生成了CSR,然后由CA签名,现在您拥有签名证书,并且您仍然拥有原始密钥对.


Eug*_*its 5

当您订购证书时,有时会询问您是否希望CA为您创建密钥对,或者您将在本地生成密钥.如果您没有被问到(或者已经选择了第二个选项),那么浏览器会生成一个密钥并在内部存储它.然后将证书申请传递给CA,他们会向您发送证书.

您仍然在浏览器中拥有私钥.然后有几个选项:(1)使用您用于创建证书申请的相同浏览器按照其说明访问CA的站点.这将在CA指示您这样做时起作用,并且(2)CA为您的案件提供一次免费重新颁发证书.您可以申请r问题.

但一般来说,您必须仔细阅读所有说明,如果您不理解它们,请不要继续进行.如果密钥是在本地生成的,那么您可以提供将私钥保存在安全位置.如果你没有这样做 - 你应该受到责备.