因此,它的一个很简单的问题,但我不知道答案。
在Android上开发SSL是在次棘手的区域。 大多数人有两种选择:*接受所有证书和风险MITM攻击*封装的证书作为应用程序BKS。
在我的应用程序的情况下,我选择了打包BKS内,并通过HttpsURLConnection的阅读
KeyStore trustStore = loadTrustStore();
KeyStore keyStore = loadKeyStore();
TrustManagerFactory tmf = TrustManagerFactory
.getInstance(TrustManagerFactory.getDefaultAlgorithm());
tmf.init(trustStore);
KeyManagerFactory kmf = KeyManagerFactory
.getInstance(KeyManagerFactory.getDefaultAlgorithm());
kmf.init(keyStore, KEYSTORE_PASSWORD.toCharArray());
SSLContext sslCtx = SSLContext.getInstance("TLS");
sslCtx.init(kmf.getKeyManagers(), tmf.getTrustManagers(), null);
URL url = new URL("https://myserver.com");
HttpsURLConnection urlConnection = (HttpsURLConnection) url
urlConnection.setSSLSocketFactory(sslCtx.getSocketFactory());
现在,我已经打了一个肿块。 我的证书过期快,我不知道效果,如果我升级它,它都会有。
问:续订SSL证书无需升级Android设备上的应用程序访问的https网址阻止他们?
问:什么是不能升级的SSL证书的影响。 将Android设备无法连接服务器