证书固定

应用只信任内置的特定证书,任何中间插手都会被拒,可能导致它在某些代理环境下连不上。

别名:证书锁定、certificate pinning、cert pinning

证书固定(certificate pinning)指:应用在代码里只信任特定的证书或公钥,握手时若对方证书与内置的不匹配,就直接拒绝连接。它的本意是防中间人攻击,提升安全。

副作用是:在一些会”介入”连接的环境下(如需要解密检查流量的代理、抓包工具),证书对不上,应用就可能连不上、登录失败或报证书错误。注意:普通的 SOCKS/HTTP 转发代理通常不改动证书,不会触发;真正触发的多是解密型中间代理。

所以某些 App 在代理下异常,未必是机场的问题,而可能是证书固定在起作用。相关的握手概念见术语页,排查思路见应用在代理下异常怎么办。