关于证书与公钥的疑惑

1.如何从“公钥证书”中提取中“公钥”?

我的理解是,应该有一个“CA”来签发“公钥证书”,然后可以使用“CA的公钥”来解密“公钥证书”,从而得到“公钥”。不知道我理解的对不对。

2.若我上面理解的是正确的话,那么,当我使用类似OpenSSL这样的工具来自签发“公钥证书”的话,我如何能从“公钥证书”中提取中“公钥”?

是说OpenSSL持有“某个CA私钥”,然后使用“该CA公钥”来解密;还是说“证书”(或“自签发证书”)里面的公钥实际上就是明文的?

3-1.我看到一些介绍说,OS中会装好很多完全可信的CA机构的根证书,用户在访问https协议的站点时,会根据该网站证书的实际签发机构,来使用“该机构的根证书”,从中取出该机构的“公钥”,来对网站进行验证。

那么还是那个问题,OS中的“CA根证书”中的“CA公钥”是如何取出来的?是又有一把“私钥”对其加密了,然后OS使用“对应的公钥”来解密“CA根证书”,从而解出“CA公钥”;还是说“证书”(或“自签发证书”)里面的公钥实际上就是明文的?

3-2.我看到OS里面装的那些“CA根证书”都是有有效期的,那么假如有一台机器,使用很多年了,还能正常运行,当里面的所有“CA根证书”都过期了,该怎么办?


以上是我查找资料,对数字证书理解的一些疑惑,希望有人能帮我梳理一下,谢谢!

阅读 5.6k
1 个回答
  1. 关于公钥证书没有这个说法吧,只是CA签发的SSL证书里会包含公钥。
  2. 公钥就是明文存储在SSL证书里面的
  3. CA根证书的公钥也是存在证书里面的,不需要解密出来。
  4. 当证书有效期过了之后,浏览器就会提示证书不安全然后无法访问网站。

可以打开证书看的到
clipboard.png
在使用私钥生成证书的时候,公钥就会存在证书里面。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进