为什么我需要证书来创建自己的其他自签名证书

为什么我需要证书来创建自己的其他自签名证书

在过去的几天里,我一直在尝试了解证书的故事,并且我了解了它们的主要原理,但我不明白当我们创建 CA 证书来签署我自己的服务器证书时的那个步骤。

我将在这里总结一下我对创建新证书以便将其与我的服务器上的服务一起使用的理解,请告诉我一切是否正确,并帮助我理解我错过或不理解的要点:

  1. 我随机创建自己的私钥(服务器密钥

  2. 我根据之前的公钥生成我的公钥(服务器端),此文件只是一个普通的证书,并没有经过任何签名。

  3. 我重复最后两个步骤得到ca.key 和 ca.csr.并让他们以某种方式签署自己证书(我不明白这里的自签名过程)。

  4. 用它们签署我的服务器端要得到服务器端

现在我不明白的是,如果我能够在步骤 3 中对文件进行自我签名,为什么我不简单地完成前两个步骤并让他们自己签名来获得它服务器端文件?

我认为我对自我签名过程存在一些误解,但不幸的是,我看了很多视频,读了很多文章,但都无法解决这个问题。

答案1

当然,你可以这么做。

您的完整流程不是甚至通常所说的“自签名”——你实际上在这里建立了一个完整的 CA 层次结构。一些教程建议这样做,以便将来更容易更换证书——你不必为新的自签名证书更新所有客户端,你只需让它们信任自定义 CA一次

此外,有些人会将“自签名”一词用于任何默认不受信任的证书。这种用法是错误的,因为从技术上讲,所有根 CA 证书也都是自签名的,但您的教程可能就是这样使用的。

相关内容