客户端如何确保服务器发送的ssl证书是证书的真正所有者?它是如何阻止黑客克隆的,例如google ssl证书,并且在握手期间欺骗我他是google网站?黑客可以克隆证书并修改网络数据包中的域或IP信息来欺骗人们吗?
答案 0 :(得分:2)
例如,SSL证书www.google.com由名为证书颁发机构(CA)的第三方签名。在谷歌的情况下,第三方目前是#34; GeoTrust Global CA"。要查找它是谁,你需要检查证书(浏览器通常会让你相当容易,但每个都有自己的方式) 这会将证书与名称" www.google.com"相关联。
您的客户拥有他们代表您信任的CA列表。该列表由您的操作系统供应商和/或您的客户端/浏览器的创建者维护。
那么客户如何知道它与正确的服务器交谈? 证书由其信任的CA签名,证书用于客户端要连接的名称,服务器提供证明它知道证书中公钥的相应密钥。
一名闯入谷歌服务器并以某种方式复制密钥的黑客可以通过一段时间,但一旦谷歌的人检测到它,他们就会联系他们的CA并撤销证书。
现在这个过程是大多数实现中的弱点,因为这些撤销的证书由CA作为证书撤销列表(CRL)或作为OCSP(在线证书状态协议)服务发布,但客户端通常采用快捷方式而不是验证证书尚未被撤销。