如何使用makecert创建证书颁发机构证书?

Ars*_*ray 13 c# https certificate makecert

我正在尝试创建一个使用SSL并带有自签名证书的网站.

这是我做的:

创建权限证书:

makecert -n "CN=root signing authority" -r -sv root.pvk root.cer
Run Code Online (Sandbox Code Playgroud)

创建目标证书

makecert -r -pe -n "CN=localhost" -b 01/01/2012 -e 01/01/2020 -sky exchange localhost.cer -sv localhost.pvk
Run Code Online (Sandbox Code Playgroud)

签署创建的证书

makecert -ic root.cer -iv root.pvk -n "CN=localhost" -sv localhost.pvk -pe -sky exchange localhost.cer
Run Code Online (Sandbox Code Playgroud)

使用私钥创建证书

pvk2pfx.exe -pvk localhost.pvk -spc localhost.cer -pfx localhost.pfx
Run Code Online (Sandbox Code Playgroud)

现在,我想用firefox来调试网站.为此,我需要将权限根证书(root.cer)导入可信证书列表.

但是,当我尝试这样做时,我收到以下错误消息:

这不是证书颁发机构证书,因此无法导入证书颁发机构列表.

我已经用fiddler的权威证书做了类似的事情,它很顺利,这意味着我的创建权威证书的过程存在问题.

如何正确创建证书颁发机构证书?

Luk*_*uke 13

也许您可以尝试在根证书创建上添加-cy authority参数,如下所示:

makecert -n "CN=root signing authority" -cy authority -r -sv root.pvk root.cer
Run Code Online (Sandbox Code Playgroud)

因此,您声明您正在创建一个权威证书,并且应该完成这项工作..或者至少带你上轨道=)

我尝试使用此命令行创建根证书并将其导入Firefox:我可以确认,如果您不添加"-cy"参数,Firefox将不会认为它是有效的根证书.

希望有所帮助!