为
Windows 2008 R2服务器生成CSR,并且需要确保用于CSR的私钥是新的.
我之前使用过OpenSSL来创建自己的自签名证书进行测试,如果我没记错的话,我可以指定一个私钥来使用.
那么,在基于Windows的服务器上生成CSR总是为它创建一个新的私钥吗?如果没有,我如何确保制作/使用新的私钥?
是
原文链接:https://www.f2er.com/windows/369914.htmlIn IIS Server Certificates,I am never asked to generate nor pick a
private key.
事实并非如此 – 向导对此并不是非常明显.
当您输入身份信息(公共名称,地点,组织等)并点击“下一步”时,第二个屏幕会询问两件事:
>加密服务提供商(CSP)
>一个比特长度
选择默认CSP – Microsoft RSA SChannel CSP – 位长度为2048将是Windows等效于:
openssl req -new -newkey rsa:2048
签名请求的剖析
CSR本身可以被认为具有3个“部分”:
>明文标识信息(CN,Locality,Org.等)
>这只是字符串,签字人(CA)可以随意改变
>公钥
>您需要在服务器上使用相应的私钥
>可选的扩展字段
>仍然只是明确的文字信息
发行人审查签名请求中的信息,可以改变(1)和(3)的内容.
然后,颁发者使用它的CA私钥来加密请求者公钥(2).
颁发最终证书时,它包含:
>明文标识信息(CN,Org.等)
>现在添加了Issuer信息
>公钥
>仍与上述相同
>可选的扩展字段
>现在可能使用Issuer扩展字段
>签名blob
>这是使用CA的私钥签名的公钥
现在,下次客户端获得您的证书时,它可以使用颁发者CA的公钥来解密签名blob(4)并将其与证书中的公钥进行比较