← 返回文章列表

证书链与信任锚:浏览器凭什么信你

TLS安全入门

信任是怎么建立的

浏览器内置一批根证书(信任锚)。服务器出示的证书由某个中间 CA 签发,中间 CA 又由根 CA 签发。浏览器沿着这条链一路验到信任的根,才算可信。

证书链

角色说明
根证书自签名,预置在系统 / 浏览器,绝不外发私钥
中间证书根签发,用来签服务器证书,保护根私钥
服务器证书你的域名证书,由中间 CA 签发

两个常见部署错误

  1. 只发服务器证书:浏览器凑不齐链会报「不受信任」,必须连同中间证书一起下发;
  2. 链顺序错:服务器应把叶子证书放最前、中间证书随后,顺序错有的客户端不认。

验证

用 openssl s_client -showcerts 看服务端实际下发的链是否完整。证书内容本身是 ASN.1 结构,也可做 Base64 观察。

动手试试

观察 Base64 编码:Base64 编解码。