android - 如何使用 .key 和 .pem 文件在 Android 中创建套接字 SSL?

标签 android sockets ssl

我的 .key 文件如下: -----开始 RSA 私钥----- MIIEpAIBAAKCAQEA1j6eGXbHpqigZ1K//wnuyr5v/L2jFm7dzTtHJx8ZoMQ4CbsG

我的 .pem 文件如下: -----开始证书----- MIIE4zCCA8ugAwIBAgIDBOziMA0GCSqGSIb3DQEBBQUAMDwxCzAJBgNVBAYTAlVT

我不知道这里验证了多少步。我只想创建一个到 IP 和端口的 ssl 套接字,并在该套接字中发送/接收数据。 我尝试使用 keystock,但也许我对它的了解不深,我总是出错。

请给我指南或示例代码。

非常感谢。

最佳答案

我假设 .key.pem 文件代表您必须用于执行 HTTPS 客户端身份验证的客户端证书。不幸的是,Java/Android 更喜欢不同的格式,因此我建议您将这两个文件导入到 BKS 文件中。

创建 BKS 文件并导入现有的 .key+.pem 文件非常简单,使用 KeyStore Explorer .启动 KeyStore Explorer 后,选择 File -> New Keystore -> BKSv1。之后您可以执行工具 -> 导入 key 对 并选择 .pem 文件。之后 KeyStore Explorer 将要求您选择 .key 文件。

最后保存使用您选择的密码保护的 keystore 。

创建的 BKSv1 文件现在可以在您的 Android 应用中使用。例如,请参阅此问题中发布的代码:Using client/server certificates for two way authentication SSL socket on Android

关于android - 如何使用 .key 和 .pem 文件在 Android 中创建套接字 SSL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11390967/

相关文章:

java - PHP 到 Java - 套接字

Java:如何让UDP套接字程序以阻塞I/O方式接收和发送?

Android:如何将 website.type_XXX 转换为字符串?

android - 使用 ACTION_MOVE 拖动对象

c - 套接字地址显示0.0.0.0,导致消息发送失败

tomcat - 丰富的 :fileUpload fails to upload over HTTP/SSL w/Apache2 + AJP + Tomcat 6. 0.24

java - 安卓java.net.UnknownHostException : Host is unresolved: server_address:443

ssl - Spring Boot 1.4.1 SSL trustAnchors 异常

java - 进度条未在通知中更新

java - 即使我完成 Activity ,Firebase 连接仍保持 Activity 状态吗?