openssl x509 -fingerprint
计算证书指纹
语法
openssl x509 -in 证书文件 -noout -fingerprint -sha256说明
适用于比对两端证书是否完全一致,或在配置中固定信任某个证书指纹。指纹算法默认使用 SHA-1,新系统建议显式指定 -sha256。指纹相同表示证书内容完全一致,指纹不同则说明证书不是同一份,哪怕主体与域名看起来一样。
参数
-fingerprint必填输出证书指纹
-sha256指定指纹摘要算法
示例
计算 SHA-256 指纹
用于与对方提供的指纹比对。
openssl x509 -in cert.pem -noout -fingerprint -sha256注意事项:比对时应通过可信渠道获取对方指纹,直接在通信内容中获取的指纹无法证明身份。
比对两份证书
确认本地与服务端使用同一份证书。
openssl x509 -in local.pem -noout -fingerprint -sha256 && openssl s_client -connect example.com:443 -servername example.com </dev/null 2>/dev/null | openssl x509 -noout -fingerprint -sha256注意事项:s_client 的输出包含整条链,需确认管道中解析的是叶子证书。