为什么 Web 服务器的公钥证书必须由证书颁发机构签名?

Oli*_*nde 9 security encryption https ssl-certificate

换句话说,不由证书颁发机构签署公钥证书(从用户角度)会有什么安全风险?我的意思是,数据仍然是加密的......中间的人可以用未签名的证书做什么?

Mar*_*son 13

SSL 与 HTTP 一起使用时的目的不仅是加密流量,还要验证网站所有者是谁,以及有人愿意投入时间和金钱来证明其域的真实性和所有权。

这就像购买一种关系,而不仅仅是加密,这种关系会灌输或假设一定程度的信任。

也就是说,几个月前我问了一个类似的问题,得到的基本答案是“SSL 有点像骗局”

  • 证书是为域颁发的。没有什么可以阻止您生成自签名证书,它只会弹出一个可怕的警告(人们不会阅读),因为浏览器不信任颁发的 CA。“一个 IP 上的多个 SSL”问题在这里已经讨论过很多次了。这是一个有很好答案的线程 http://serverfault.com/questions/73162/can-i-run-two-different-secure-sites-using-the-port-443-on-the-same-server (2认同)

Zor*_*che 8

想象一下,您要向一个您从未见过或从未联系过的人约翰·史密斯提供 1,000,000 美元。你被告知你可以在拥挤的公共场所见到他。当你去见他时,你需要一些方法来确保他确实是你要找的人,而不是其他一些自称是约翰史密斯的随机人。你可能会要求一些政府身份证,一张名片。您可能会请一位您信任且实际见过约翰·史密斯的人帮助识别他。

自签名证书唯一地标识了一个系统,但它并不能证明该系统就是它所声称的那样。我可以轻松地对证书进行自签名并声称是 serverfault.com、google.com 或 yourbank.com。证书颁发机构基本上充当客户端信任的第三方,以验证证书对于站点声称拥有的名称实际上是否有效。