【发布时间】:2016-11-13 01:35:51
【问题描述】:
我目前正在使用 SSL 编写网络 TCP 服务器。在生产中,我们最终会要求客户端使用证书进行身份验证。
为了在紧急情况下撤销证书,我们还想建立一个 CRL。
我的问题是:Java 是开箱即用地检查 CRL(如果随证书一起提供)还是我需要手动实施此类检查?
为了测试,我准备了一个带有 CRL 集的证书,但 Java 似乎没有尝试验证它(我将它放到本地 Web 服务器中,并且无法访问)。
我只找到了 com.sun.net.ssl.checkRevocation=true VM 选项,但显然它没有查询 CRL。设置为 java.security.debug=certpath 的 VM 调试也不会生成任何输出...
Java 似乎在其子系统中有相关的类(例如 java.security.cert.X509CRLSelector),但显然它并没有发挥作用。
编辑:删除过时的 Dropbox 链接
【问题讨论】:
-
@DeepakAgrawal 您的第一个陈述不正确,您随后引用的 Java 文档明确指出您不必实现自定义验证器。请删除您最初的错误陈述。
标签: java ssl certificate-revocation