- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在使用 Windows 上的自定义信任库将我基于 JSSE 的功能 HttpsURLConnection 实现带到 Android 上遇到各种问题后,我遇到了一些我无法得到答案的问题:(Android 应用程序仍然无法运行)
Android 4.0 是否仍仅支持 keystore 和信任库的 BKS 格式(而不支持 JKS)?我的 Windows 应用程序使用了 JKS。
在 Android 平台上使用 JSSE 或 ApacheHttp 进行安全 TLS 通信哪个更好? (我的 Windows 应用程序使用了 JSSE HttpsURLConnection 和 friend )
在我开始努力让自定义信任库在 Android 上运行之前,我想知道使用 JSSE 是否是错误的树。使用这两个 API 肯定是有原因的!话又说回来,也许不是。
最佳答案
Android 系统信任库已在 ICS 中得到扩展,现在可以让您安装受信任的证书。完成后,它们将由默认的 TrustManager
拾取,并且 HttpClient
和 HttpsUrlConnection
应该可以正常工作,不需要自定义存储。更多详情 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/
我正在尝试做基于客户端服务器的 ssl, 这是我的服务器代码: public static void main(String arg[]){ try { KeyStore keyStore =
我找到了介绍 key 生成步骤的教程。它讲述了以下步骤: keytool -genkey -alias clientprivate -keystore client.private -storetyp
在 Java 中使用 JSSE 和 TLS。我在服务器和客户端之间创建了一个安全套接字。在最终让套接字安全连接之后,我仍然对我现有代码的安全性有一个基本问题。我按照教程中的说明进行操作,有时 Java
我正在用 Java 编写一个客户端(需要在桌面 JRE 和 Android 上工作),用于通过 TLS 承载的专有协议(protocol)(特定于我的公司)。我试图找出用 Java 编写 TLS 客户
JSSE 和 JCE 有什么区别。这两者都涉及广泛情况下的加密。我的问题可能没说清楚。由于 JCE 提供了加密功能,我们可以使用它来加密数据,那么为什么我们需要使用 JSSE 来实现也提供加密功能的安
在使用 Windows 上的自定义信任库将我基于 JSSE 的功能 HttpsURLConnection 实现带到 Android 上遇到各种问题后,我遇到了一些我无法得到答案的问题:(Android
我需要通过我的代理(我相信是隧道)建立一个使用 JSSE 建立的 SSL 连接。是否已经有任何库/属性/方法,或者我必须在低级别实现它? 请注意,只需为我的程序的一个子集定义此代理。我程序中的其他 H
我只是在 java 中收集一些关于 SSL/TSL 的信息,因为我们在使用 netty 时甚至不知道我们当前使用的是什么 TLS 协议(protocol)。我们的应用程序在 Java7 上运行,因此
对于大学安全实验室工作,我必须使用 RMI 创建一个简单的客户端/服务器应用程序。对于客户端和服务器之间的安全通信,我想使用 SSL。 Oracle has example所以我尝试使用它。我得到错误
为我的服务器应用程序使用 BouncyCaSTLe FIPS JSSE 和 TLS 提供程序。 org.bouncycastle bcpkix-fips
我正在使用 JSSE 并具有以下代码: private static void setupServerKeystore() throws GeneralSecurityException, IOExc
我有一个 Java 服务器,它接受使用 JSSE 的 SSL 连接,并在流中使用简单的 XML 消息格式。我希望服务器读取完整的消息然后发送回复。事实证明这非常困难,因为 org.xml.sax.XM
我正在编写一个将 SSLEngine 与 NIO 结合使用的应用程序,我同时编写了客户端和服务器。客户端能够连接到服务器,连接后我希望他能够执行 session 恢复/重新协商,但目前运气不好.. 由
我关注了Hardening your web servers ssl ciphers建议使用的指南 ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+A
我正在编写一个使用 SSLEngine 和 NIO 的应用程序,我编写了客户端和服务器。客户端能够连接到服务器,连接后我希望他能够执行 session 恢复/重新协商,但目前没有运气.. 由于使用 S
如果包含一个或多个 PrivateKeyEntry 的 keystore 被指定为信任库,JSSE 是否会根据每个条目中的最终实体证书创建一个信任 anchor ? 换句话说,如果我们有一个包含可信条
我想在 JSSE 中记录客户端发送的 tls 版本、服务器首选版本、服务器首选密码套件等内容。这个怎么做?请注意,我只能使用 Java 代码来执行此操作。不接受解析日志文件。 最佳答案 您可以将 -D
我们正在使用 Maven 2,并且有一个使用 SSL 客户端身份验证保护的 Maven 存储库管理器。为了让 Maven 访问存储库,必须将以下系统属性传递给 Java: javax.net.ssl.
我正在使用 c#-4.0 开发应用程序和 EntireX Broker 9.5.1 我正在尝试转换为 tpcip 连接以使用 ssl。我成功升级了我的 java由于 Java/Software AG
我正在尝试将 jsse.enableSNIExtension 属性设置为 false,但每次尝试时我都会获得 java 手册。 java -Djsse.enableSNIExtension=false
我是一名优秀的程序员,十分优秀!