这是我在主文件中的代码:能否告诉我如何在android studio中为android应用程序生成BKS密钥库?
OkHttpClient okHttpClient = new OkHttpClient();
try {
KeyStore ksTrust = KeyStore.getInstance("BKS");
InputStream instream = this.getResources().openRawResource(R.raw.keystore);
ksTrust.load(instream, "secret".toCharArray());
// TrustManager decides which certificate authorities to use.
TrustManagerFactory tmf = TrustManagerFactory
.getInstance(TrustManagerFactory.getDefaultAlgorithm());
tmf.init(ksTrust);
sslContext = SSLContext.getInstance("TLS");
sslContext.init(null, tmf.getTrustManagers(), null);
okHttpClient.setSslSocketFactory(sslContext.getSocketFactory());
} catch (KeyStoreException | IOException | NoSuchAlgorithmException | CertificateException | KeyManagementException e) {
Log.e(TAG,"in catch");
Log.e(TAG,e.toString());
e.printStackTrace();
}
使用此命令创建bks证书。
keytool -importcert -v -trustcacerts -file "path_to_cert/interm_ca. conf "/raw/myKeystore. cer" -alias IntermediateCA -keystore "res/raw/myKeystore。bks -storetype bks -storepass mysecret
详情在这里,
http://blog.antoine.li/2010/10/22/android-trusting-ssl-certificates/