如何安全地在Java SSL中导入自签名证书?

时间:2013-11-13 18:45:46

标签: java ssl keytool self-signed

我正在编写一个程序来模拟SSL套接字上的安全连接。我希望客户端通过接口自行导入不受信任(因此不在其信任库中)的证书。这些证书是自签名的。

到目前为止,我遇到了一堵墙,程序崩溃并报告Received fatal alert: certificate_unknown 由于服务器证书不驻留在客户端信任库中。

我在本地模拟连接。我发现了明确使用信任库管理器来覆盖所有SSL检查的示例,但这对MITM攻击是敞开的。

我需要以某种方式包装信任库管理器实现以使其安全,并确保验证服务器证书。这里的链接提供了一个good example的开放实现,但我不知道如何安全地包装它。

在trustmanager实现的情况下,当它找到不受信任的证书(来自其CertificateException方法)时仍会触发checkServerTrusted,我是否必须处理该异常但仍继续执行该程序从那里?我很不确定如何处理这种安全包装。

非常感谢所有人

0 个答案:

没有答案