Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ssl 导入到根存储中的非自签名证书是否要求(自签名)颁发者也导入到根存储中?_Ssl_Cryptography_Certificate - Fatal编程技术网

Ssl 导入到根存储中的非自签名证书是否要求(自签名)颁发者也导入到根存储中?

Ssl 导入到根存储中的非自签名证书是否要求(自签名)颁发者也导入到根存储中?,ssl,cryptography,certificate,Ssl,Cryptography,Certificate,导入到根存储中的非自签名证书是否要求(自签名)颁发者也导入到根存储中 假设我有一个由另一个证书签名的证书a。那么,仅将A导入根存储区就足够了吗,即证书验证在A处停止,还是应该将B导入根存储区以进行正确的证书验证 我问这个问题的原因是,我在不同的产品(例如web浏览器或系统)中遇到了不同的结果,因此我想知道正确的方法。您应该在truststore中包含证书B。正如在评论中提到的,您的里程可能会有所不同,因为客户端和服务器实现RFC的方式不同 就规则而言,IETF中有x.509证书的规范。关键信息是

导入到根存储中的非自签名证书是否要求(自签名)颁发者也导入到根存储中

假设我有一个由另一个证书签名的证书
a
。那么,仅将
A
导入根存储区就足够了吗,即证书验证在
A
处停止,还是应该将
B
导入根存储区以进行正确的证书验证


我问这个问题的原因是,我在不同的产品(例如web浏览器或系统)中遇到了不同的结果,因此我想知道正确的方法。

您应该在truststore中包含证书B。正如在评论中提到的,您的里程可能会有所不同,因为客户端和服务器实现RFC的方式不同

就规则而言,IETF中有x.509证书的规范。关键信息是,对于要发生的SSL握手,客户端应该执行完整的证书链验证,该验证以信任存储中的自签名证书结束

您的证书不是自签名的,它是由不同的CA(证书B)颁发的。如果您的信任库中没有B,那么信任链就会断开。然而,同样如上所述,客户端可能不会验证完整的证书链

这样想吧。您的客户将收到由“B”签名的证书A。客户应验证A上的签名是否正确,这意味着需要(B证书)。如果B是“根”CA或自签名,则其“颁发者”和“主题”字段将匹配。如果证书B在你的信任库中,你就是黄金

服务器的任务是向您发送电子邮件

这是一个证书序列(链)。寄件人的 证书必须排在列表的第一位。每个跟随者 证书必须直接证明其前面的证书


存在证书链验证的可视化表示。希望有帮助。

浏览器将要求在受信任的证书颁发机构中存在结束自签名证书,否则会引发错误,整个链应在证书存储中配置,以便客户端应用程序可以确保证书由已知实体签名。我假设“根存储”是仅包含完全受信任证书的证书存储。它应该不需要它,但软件可能无法区分它的情况非常罕见。通常,在根存储中具有自签名“CA”证书以外的其他证书是配置错误的证据。是否有标准规定根存储中的证书应按原样自签名或受信任@Pras@JamesKPolk是的,你是对的。标准说明了什么吗?没有标准,这完全是特定于应用程序的。因此,客户端不会盲目信任信任存储中的非自签名证书,而只是因为证书在存储中?客户端应该做什么和它做什么是两件独立的事情,因此我说您的里程可能会有所不同。服务器可能只是给你一个证书,没有任何链。然后,您的客户应该查找签名并遍历该链,直到到达一个自签名的签名,该签名应该在truststore中。我在野外看到的是,如果您没有中间服务器的证书,SSL验证可能会失败,这就是为什么将它们“以及”自签名/根CA(它们是自签名的)放在信任库中的原因。谢谢,“中间服务器的证书”指的是“服务器的中间证书”,对吗?我指的是中间CA服务器的证书。谢谢,但请记住,并非所有证书都对应于一台服务器。证书也可能对应于CA。