小编ira*_*epr的帖子

Java SSL connect,以编程方式将服务器证书添加到密钥库

我正在将SSL客户端连接到我的SSL服务器.当客户端由于客户端密钥存储区中不存在根证书而无法验证证书时,我需要选择将该证书添加到代码中的本地密钥存储区并继续.有一些示例总是接受所有证书,但我希望用户验证证书并将其添加到本地密钥库而无需离开应用程序.

SSLSocketFactory sslsocketfactory = (SSLSocketFactory) SSLSocketFactory.getDefault();
SSLSocket sslsocket = (SSLSocket) sslsocketfactory.createSocket("localhost", 23467);
try{
    sslsocket.startHandshake();
} catch (IOException e) {
    //here I want to get the peer's certificate, conditionally add to local key store, then reauthenticate successfully
}
Run Code Online (Sandbox Code Playgroud)

有很多关于自定义SocketFactory,TrustManager,SSLContext等的东西,我真的不明白它们是如何组合在一起的,或者哪条是我目标的最短路径.

java ssl

27
推荐指数
2
解决办法
9万
查看次数

标签 统计

java ×1

ssl ×1