【问题标题】:How to predetermine OkHTTP sha1 hash for Certificate Pinning?如何为证书固定预先确定 OkHTTP sha1 哈希?
【发布时间】:2015-07-21 10:57:31
【问题描述】:

我想使用 okhttp CertificatePinner Builder 预先确定用于证书固定的 sha1 哈希。 sample code 提到尝试使用错误的 pin 哈希访问 https url,然后查看异常以获取实际的哈希。

理想情况下,如果我已经通过查看已发布的证书公钥和相关的 sha1 签名来更新我的证书的签名和链信息,我可以从公共文档或我的浏览器视图中获取证书详细信息的哈希值。

不幸的是,为证书显示的“sha1 签名”值是十六进制格式,似乎与异常中显示的 sha1 哈希没有明显关联。

我有什么方法可以在不经过异常过程的情况下确定 sha1 必须用于证书固定?

另外,不确定用于 Okhttp 的“sha1 哈希”是否与证书“指纹”同义?

【问题讨论】:

  • 我也遇到了类似的问题。显示的值是十六进制格式,通过在线工具将其转换为 SHA256 没有帮助。你解决了吗?

标签: java ssl https x509certificate okhttp


【解决方案1】:

如果让 OkHttp 为您打印它太容易了,您可能更喜欢使用与 Moxie Marlinspike wrote 类似的工具。

【讨论】:

  • 有没有办法让okHttp按以下格式打印SHA密钥? javax.net.ssl.SSLPeerUnverifiedException:证书固定失败!对等证书链:sha256/afwiKY3RxoMmLkuRW1l7QsPZTJPwDS2pdDROQjXw8ig=: CN=publicobject.com, OU=PositiveSSL sha256/klO23nT2ehFDXCfx3eHTDRESMz3asj1muO+4aIdjiuY=: CN=COMODO RSA Secure Server CA 我得到的都是十六进制
猜你喜欢
  • 2017-12-17
  • 2018-04-07
  • 2014-07-23
  • 1970-01-01
  • 1970-01-01
  • 2016-07-09
  • 1970-01-01
  • 2021-02-04
  • 1970-01-01
相关资源
最近更新 更多