我从证书颁发机构和安全团体那里听到了有关这方面的相互矛盾的声明,并想确认:在CSR上是否需要一个SHA-256签名才能生成一个带有SHA-256签名的签名证书?
我认为这不是一个要求,但找不到任何东西来确定这样或那样的方式。
发布于 2015-11-20 23:19:16
没有任何技术原因可以阻止CA颁发带有SHA-256签名的证书,即使CSR是由请求方使用一些较弱的签名算法签名的。
请求方在CSR中签名的目的是防止某人请求包含他人公钥的虚假证书。CA有责任使用CSR中包含的公钥验证CSR中的签名(由请求者使用与CSR中包含的公钥相对应的私钥签名)。假设签名被验证,CA然后继续并生成一个包含来自CSR的相关信息的证书(例如公共名称、公钥等),然后使用他们自己的私钥签署证书,使用他们选择的任何签名算法(现在通常是SHA-256 )。当然,如果CA认为请求方用于签署CSR的签名算法不够强大,则CA可以拒绝该请求,但这将由他们自行决定。但是如您所见,没有什么能阻止CA颁发证书并使用SHA-256签名进行签名,只要他们对CSR中的请求者的签名感到满意。
发布于 2015-11-21 07:31:21
我认为这不是一个要求,但找不到任何东西来确定这样或那样的方式。
不是的。这不是一项技术要求。CA可以做他们想做的事。如果你愿意的话,他们可以给你颁发证书,如果你提交写在餐巾纸背面的数据的话。没有任何技术手段可以阻止他们。
在CSR上是否需要SHA-256签名才能生成具有SHA-256签名的签名证书?
不是的。同时,大多数CA默认为sha-2家庭类型散列,实际上您必须明确声明您需要一个SHA1证书。
但大约一年前,这个问题引起了很多混乱。
根据有帮助的,但名字很差的网站
确实有一个CA:
事实上,CA网站上说:
至2016年1月1日:
问:他们为什么要这么做?
答:再说一次,没有技术上的原因。对他们来说,这只是一个不太有用的惯例/组织问题。我想这有点类似于这个假设的想法:如果你想申请绿卡在美国工作,你可能会被要求在一张绿皮书上提交你的申请。没什么技术上的。纯粹的组织过程。这只是一点数据(SHA2?打开/关闭),否则就必须以另一种方式传输。(就像网站上的复选框一样。)
https://security.stackexchange.com/questions/106075
复制相似问题