我有一个正在运行的Android应用程序,该应用程序使用SHA256引脚实现了证书固定。我使用https://www.ssllabs.com/ssltest工具获取该图钉。
当前服务器证书即将到期,并且新证书将应用于服务器。在将新证书应用于服务器之前,我需要为新证书生成SHA256引脚,以便可以将其添加到应用程序并在更新中引入它。
我有新的证书.crt文件。任何想法如何从文件生成SHA256密钥?我无权访问服务器,只有.crt文件。
根据OkHttp的CertificatePinner文档:
SHA-256或SHA-1哈希。每个图钉都是证书主题的哈希值 公钥信息,以base64编码,并以sha256 /或前缀为前缀 sha1 /.
答案 0 :(得分:1)
This是您要寻找的。 p>
确保您拥有openssl
的最新版本
答案 1 :(得分:0)
试试这个命令
openssl x509 -in my-certificate.crt -pubkey -noout | openssl pkey -pubin -outform der | openssl dgst -sha256 -binary | openssl enc -base64
然后使用
"sha256/" + ${ouput hash from the command line above}.
您可以在 Mozilla 开发者网络的 Public Key Pinning page 找到更多命令