gpt4 book ai didi

Android 安全通信 : JSSE or Apache Http?

转载 作者:行者123 更新时间:2023-11-29 02:09:03 25 4
gpt4 key购买 nike

在使用 Windows 上的自定义信任库将我基于 JSSE 的功能 HttpsURLConnection 实现带到 Android 上遇到各种问题后,我遇到了一些我无法得到答案的问题:(Android 应用程序仍然无法运行)

  1. Android 4.0 是否仍仅支持 keystore 和信任库的 BKS 格式(而不支持 JKS)?我的 Windows 应用程序使用了 JKS。

  2. 在 Android 平台上使用 JSSE 或 ApacheHttp 进行安全 TLS 通信哪个更好? (我的 Windows 应用程序使用了 JSSE HttpsURLConnection 和 friend )

在我开始努力让自定义信任库在 Android 上运行之前,我想知道使用 JSSE 是否是错误的树。使用这两个 API 肯定是有原因的!话又说回来,也许不是。

最佳答案

Android 系统信任库已在 ICS 中得到扩展,现在可以让您安装受信任的证书。完成后,它们将由默认的 TrustManager 拾取,并且 HttpClientHttpsUrlConnection 应该可以正常工作,不需要自定义存储。更多详情 here . JKS 格式是专有的,很可能不受支持。

Apache HttpClient 更灵活,API 表现力更强,但 Android 团队表示他们从现在开始只会改进 HttpConnection。因此,对于较新的平台,如果您可以忍受 API,那应该是您的选择。顺便说一句,在 Android 上,两者都使用基于 native OpenSSL 代码的相同 JSSE 实现。但是,证书验证是用 Java 完成的,并且主要基于 BouncyCaSTLe 代码。

更新:关于如何使用 HttpClient 和 HttpsURLConnection 执行此操作的一些示例代码:

https://github.com/nelenkov/custom-cert-https

相关博文:

http://nelenkov.blogspot.com/2011/12/using-custom-certificate-trust-store-on.html

关于Android 安全通信 : JSSE or Apache Http?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8520306/

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