Android:将密钥库作为资产打开以生成SSLSocketFactory

Android:将密钥库作为资产打开以生成SSLSocketFactory,第1张

概述我有一个BouncyCastle密钥库,我想用它连接到SSLSocketFactory.在“桌面”Java中执行此 *** 作很简单,但是如何在android上执行此 *** 作.你输入资产还是res/raw似乎没什么区别–试图打开它并在实例化KeyStore实例(在这种情况下是java.security.KeyStore)传递给SSLSocketFactorys构

我有一个Bouncy Castle密钥库,我想用它连接到SSLSocketFactory.
在“桌面”Java中执行此 *** 作很简单,但是如何在androID上执行此 *** 作.

你输入资产还是res / raw似乎没什么区别 – 试图打开它并在实例化KeyStore实例(在这种情况下是java.security.KeyStore)传递给SSLSocketFactorys构造函数时出现问题.

以前有人有过这方面的成功吗?什么是“阅读”并打开它的最佳方式?任何指针或代码片段都是最受欢迎的.

非常感谢

解决方法:

这应该做:

import androID.content.Context;import org.apache.http.conn.ClIEntConnectionManager;import org.apache.http.conn.scheme.PlainSocketFactory;import org.apache.http.conn.scheme.Scheme;import org.apache.http.conn.scheme.SchemeRegistry;import org.apache.http.conn.ssl.SSLSocketFactory;import org.apache.http.impl.clIEnt.DefaulthttpClIEnt;import org.apache.http.impl.conn.SingleClIEntConnManager;import java.io.inputStream;import java.security.KeyStore;public class MyhttpClIEnt extends DefaulthttpClIEnt {  final Context context;  public MyhttpClIEnt(Context context) {    this.context = context;  }  @OverrIDe protected ClIEntConnectionManager createClIEntConnectionManager() {    SchemeRegistry registry = new SchemeRegistry();    registry.register(        new Scheme("http", PlainSocketFactory.getSocketFactory(), 80));    registry.register(new Scheme("https", newSslSocketFactory(), 443));    return new SingleClIEntConnManager(getParams(), registry);  }  private SSLSocketFactory newSslSocketFactory() {    try {      KeyStore trusted = KeyStore.getInstance("BKS");      inputStream in = context.getResources().openRawResource(R.raw.mystore);      try {        trusted.load(in, "ez24get".tochararray());      } finally {        in.close();      }      return new SSLSocketFactory(trusted);    } catch (Exception e) {      throw new AssertionError(e);    }  }}

ez24get将是密钥库的密码.

总结

以上是内存溢出为你收集整理的Android:将密钥库作为资产打开以生成SSLSocketFactory全部内容,希望文章能够帮你解决Android:将密钥库作为资产打开以生成SSLSocketFactory所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1117565.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存