gpt4 book ai didi

java - 使用 IP 的有效 android 证书

转载 作者:行者123 更新时间:2023-11-30 09:05:59 24 4
gpt4 key购买 nike

在我的工作中,我们使用内部 CA 运行私有(private) PKI 来签署我们的服务器证书。在开发一个通过 https 与 REST api 通信的 Android 应用程序时,我使用 192.168.x.x IP 设置了一个开发服务器并为其颁发了证书。所以我有:

  • CN 为“Custom CA”的 CA 证书
  • CN 为 192.168.0.3 的服务器证书

然后我关注了Android docs on setting up a TrustStore并让应用程序在 Android 4.0.4 设备中通过 https 进行通信。当我在运行 Android 4.4 (KitKat) 的设备上测试应用程序时,无法验证服务器。

有什么想法吗?

最佳答案

所以在对 RFC2818 进行了一些挖掘之后和 RFC6125我发现 APIv14 (4.0.4) 中的 DefaultHostnameVerifier 实现根据 CN 部分检查主机,如果不匹配,它将查找 DNS 类型而非 IP 类型的 SAN 条目。 APIv19 (4.4.4)将根据 SAN IP 条目检查 IP 主机。

所以我在服务器证书中添加了一个 IP SAN 条目 192.168.0.3 并针对 CA 对其进行了签名,并让 4.4 设备通过 HTTPS 进行通信。

关于java - 使用 IP 的有效 android 证书,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24631695/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com