如何一步创建一个带有私钥的自签名证书文件?

37

我想为开发目的生成证书,但不想将证书安装在存储库中。

使用-pe开关的makecert如果指定输出文件,则不会创建私钥。

当我尝试通过导出使用makecert创建的证书来创建.pfx文件时,它要求设置密码以保护私钥;我猜我不能在我的WCF服务中使用它,因为配置文件中没有密码信息...

为什么这么复杂呢?你知道一个简单的工具可以在一步中创建带有私钥且无需密码的文件吗?

1个回答

55
makecert -r -pe -n "CN=CompanyXYZ Server" -b 01/01/2007 -e 01/01/2010 -sky exchange Server.cer -sv Server.pvk
pvk2pfx.exe -pvk Server.pvk -spc Server.cer -pfx Server.pfx

来源于这里


8
这个方法非常好,但有一个注意事项。对于我来说(6年后,使用VS2013),如果我在弹出的对话框中输入密码,则似乎pfx文件没有密码(当在C# X509Certificate2()方法中使用pfx文件时,会出现与密码相关的安全异常)。我必须在pvk2pfk.exe上使用-pi和-po开关,即使文档说它将默认使用给定的密码。 - bitcoder
@bitcoder,你能把你的命令放在这里吗?如果你还有的话。 ;) - Jenan
@Jenan 我_认为_我在另一个答案中使用了这个,希望它是你需要的东西(如果你正在使用一些C# API与你的证书一起使用,那里的讨论可能对你有用):https://dev59.com/a18d5IYBdhLWcg3wlzD6#31977847 - bitcoder

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接