HTTPS 依赖 PKI 信任链验证服务器身份,但当设备被植入恶意根证书(如企业代理或恶意软件)时,中间人攻击(MITM)便可成功解密流量。证书固定 通过将服务端证书或公钥哈希硬编码在客户端,绕过对系统根证书的盲目信任。
一、Android 网络安全性配置示例
xml
<network-security-config>
<domain-config>
<domain includeSubdomains="true">api.example.com</domain>
<pin-set expiration="2026-12-31">
<pin digest="SHA-256">7HIpactkIAq2Y49orFOOQKurWxmmSFZhBCoQYcRhJ3Y=</pin>
</pin-set>
</domain-config>
</network-security-config>当攻击者使用伪造证书进行解密时,客户端计算出的公钥哈希与固定值不匹配,连接会被主动拒绝。生产环境应至少保留一枚备份 Pin,避免证书轮换导致客户端全面失联。