我通过了这个链接。
我有几个问题:
1.什么是密钥库?我需要实施什么以及为什么需要实施?
2.什么是TrustManagerFactory,在这个上下文中什么是'X509'?请回答是否存在“X509”以外的其他内容。
3.我应该了解或咨询我的网络服务器应用程序团队的哪些细节?我是否需要了解任何类型的证书或其他信息?
我的问题场景:我想做的是通过网络检索一些 XML 字符串,并且它必须受到保护,因为它有点敏感。
我在等你的答案。
您可能不需要详细研究 HTTPS 来保护您的 XML。要使用 HTTPS,您通常只需要为您的域获取官方 SSL 证书,并在您的服务器中使用它。然后 HTTP 客户端,无论是在浏览器、WebView 还是 Java HTTPClient 中,都会知道如何处理它。
阅读 Java SSL 实现、JSSE 文档以了解一些基础知识和观点。
密钥库存储密钥或证书。如果颁发您服务器证书的 CA 受 Android 信任(即,它已安装在系统信任库中),则您无需乱搞密钥库。它应该可以工作。如果不是,您可能需要创建自己的信任库,其中包括您的服务器的证书(如果它是自签名的)或发行 CA 的证书(如果不是)。
TrustManagerFactory
产生一个TrustManager
. 它告诉您的应用程序/系统信任哪些证书。从技术上讲,除了 X.509 之外还可以有其他实现,但实际上这是唯一一个在使用的实现。
请参阅 1. 询问他们是谁颁发了证书。或者只需使用浏览器访问该站点。如果您收到警告或错误,事情可能会变得有些复杂,因为默认情况下 Android 很可能也不信任服务器证书。如果不是,您的应用程序应该只使用https://myserver/sevice
类型 URL 而不是一个类型的 URL http://
。