我已经对此进行了一些研究,但是仍然在连接这些点时遇到了一些麻烦,即当服务器在验证签名和根证书方面将其证书发送到客户端时究竟会发生什么。
当你创建一个 CSR 时,它会生成一个私钥,然后你将它发送给 CA 以生成证书并对其进行签名,但是 CA 不使用它自己的私钥进行签名吗?那么您使用 CSR 生成的私钥有什么意义呢?
当服务器将其证书发送给客户端进行验证时,客户端如何验证它是有效的 CA 证书。它有一组受信任的 CA 证书,好的 - 但它们究竟是如何用于验证它是使用服务器证书的签名和公钥签署服务器证书的有效 CA?比较哪些东西以确保它不是伪造的?
加密您的内部自签名证书有什么意义吗?内部根证书怎么样?还是私钥是唯一值得加密的?
例如,如果我们不为我们的 Web 服务(通过 SSL)保留加密数据的数据库,我们是否会在生成自签名证书后关心存储我们自己的私钥,如果我们这样做,他们为什么呢?