我有一个应用程序,它的站点证书散列与OkHttp3类似,类似于提到的这里方法。
网站证书即将过期,但我意识到,我需要能够支持一个新的网站证书,只要我切换更新的网站,以及让当前的一个仍然工作到那时。是否有一种方法可以将2份证书钉在同一个站点上,这样就可以无缝地支持这两种证书(即,当当前的证书过期,其中一张不再有效时,以及新的证书一旦更新)?
提亚
发布于 2016-11-19 13:08:06
这是CertificatePinner记录在案的行为。因此,只需为当前证书和旧证书添加引脚即可。
http://square.github.io/okhttp/3.x/okhttp/okhttp3/CertificatePinner.html#check-java.lang.String-java.util.List-
确认至少有一个锁定主机名的证书在peerCertificates中。如果没有固定主机名的证书,则不执行任何操作。OkHttp在成功的TLS握手之后,但在使用连接之前调用它。
n.b.由于证书的过期可能发生在旧客户端更新之前,因此通常建议您也使用您所使用的CA,因为在旧证书和新证书之间很可能是一致的。这将确保即使当前和下一个证书过期或被撤销,也可以使用生成的新证书和旧客户端进行身份验证。
https://community.letsencrypt.org/t/hpkp-best-practices-if-you-choose-to-implement/4625
https://stackoverflow.com/questions/40684336
复制相似问题