就 SSL 和一般安全性而言,我完全是个新手。我找到了以下关于如何加载 keystore 以信任自定义 SSL 证书的示例(顺便说一句,这是使用 Apache HTTPClient):
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);
}
}
我想您需要访问设备才能修改 keystore ,但是... keystore 密码(“ez24get”)在代码中很容易获得这一事实是否存在问题?怎样才能破坏包含此代码的应用程序?
最佳答案
如果这是您愿意承担的风险。
任何有足够决心反编译您的代码的人都可以得到它。即使您混淆了您的代码,您仍然会冒着风险,因为他们需要做的就是找到字符串。
关于java - 在我的应用程序中硬编码我的 keystore 的密码可以吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5188252/