小编典典

我想出了如何在SSLContext中启用CRL检查,而无需实现注释中建议的自定义验证器。

主要是关于使用吊销检查器,只有几行,没有自定义检查逻辑以及现在自动检查CRL和验证路径来正确初始化SSLContext的TrustManager。

这是一个片段…

KeyStore ts = KeyStore.getInstance("JKS");

FileInputStream tfis = new FileInputStream(trustStorePath);

ts.load(tfis, trustStorePass.toCharArray());

KeyManagerFactory kmf = KeyManagerFactory.getInstance(KeyManagerFactory.getDefaultAlgorithm());

TrustManagerFactory tmf = TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm());

// initialize certification path checking for the offered certificates and revocation checks against CLRs

CertPathBuilder cpb = CertPathBuilder.getInstance("PKIX");

PKIXRevocationChecker rc = (PKIXRevocationChecker)cpb.getRevocationChecker();

rc.setOptions(EnumSet.of(

PKIXRevocationChecker.Option.PREFER_CRLS, // prefer CLR over OCSP

PKIXRevocationChecker.Option.ONLY_END_ENTITY,

PKIXRevocationChecker.Option.NO_FALLBACK)); // don't fall back to OCSP checking

PKIXBuilderParameters pkixParams = new PKIXBuilderParameters(ts, new X509CertSelector());

pkixParams.addCertPathChecker(rc);

tmf.init( new CertPathTrustManagerParameters(pkixParams) );

// init KeyManagerFactory

kmf.init(...)

SSLContext ctx = SSLContext.getInstance("TLS");

ctx.init(kmf.getKeyManagers), tmf.getTrustManagers(), null);

从本质上讲,这满足了我在应用程序中所需的工作,检查了颁发给客户的证书是否在我们的CRL中被吊销。只接受最终实体并允许CRL检查失败,因为它是我们的所有基础结构。

2020-10-25

Java移除ssl认证_Java SSL证书吊销检查相关推荐

  1. ie检查服务器证书吊销,“检查服务器证书是否已吊销”的勾选去掉

    尊敬的客户,您好! 感谢您在我们的TechNet论坛发帖. 1.这是什么问题?该怎么解决? >>根据您的描述,您是不是使用公网证书绑定了一个IE网页,当在IE选项里勾选"检查服务 ...

  2. ie检查服务器证书吊销,检查服务器证书吊销选项在哪里?服务器证书无效怎么办?...

    我们现在基本上每天都离不开电脑,不管是生活还是工作,基本上都需要用到电脑,所以说我们对网络的知识都要有一定的了解.那么对于服务器证书有时候很多人都不是特别的了解,给大家讲一下检查服务器证书吊销选项在哪 ...

  3. java移除input焦点_java – Eclipse editText在按下完成后删除焦点(光标)

    我是Eclipse的新手,我必须通过在软键盘中按下完成按钮后清除editText中的焦点来隐藏光标. 我发现此代码适用于其他人: editText.setOnEditorActionListener( ...

  4. 数字证书与实现双向SSL认证

    数字证书与实现双向SSL认证一:数字证书 什么是证书? 既然叫证书,肯定是用来证明什么东西的,比如身份,学历,能力等级.数字证书简单理解就是证明你在互联网中的身份.证书一般都需要有一个权威颁发机构,而 ...

  5. 达梦数据库配置SSL认证加密

    环境介绍 OS Version:Kylin Linux Advanced Server release V10 (SP1) /(Tercel)-x86_64-Build19/20210319 DB V ...

  6. 关于HttpClient绕过SSL认证以及NTLM认证

    前言 本篇文章只涉及本人在工作上使用HttpClient遇到的情况,并不会详细地展开讲如何使用HttpClient. 1. 为什么使用HttpClient? 一开始其实是考虑使用RestTemplat ...

  7. SSL协议安全系列:PKI体系中的证书吊销

    GoSSIP_SJTU · 2016/03/03 10:06 0x00 前言 在前面的章节我们讨论了部分SSL/TLS握手协议.记录协议中存在的安全问题,针对它们的攻击以及相应的加固方案.在SSL/T ...

  8. 【ssl认证、证书】java中的ssl语法API说明(SSLContext)、与keytool 工具的联系

    文章目录 1. 前言 java中的ssl语法与keytool 工具的联系 2. SSLContext的体系 2.1 KeyStore 2.1.1 通过证书库文件创建: 2.1.2 随机生成自签名证书库 ...

  9. 【ssl认证、证书】SSL双向认证java实战、keytool创建证书

    文章目录 概述 keytool示例 参考 相关文章: //-----------Java SSL begin---------------------- [ssl认证.证书]SSL双向认证和SSL单向 ...

最新文章

  1. 也谈Javascript的效率,createElement和innerHTML,为innerHTML平反
  2. 让你用 Chrome 上网快到想哭:Vimium
  3. 带你学python基础:列表List
  4. tableau join 与格式问题
  5. Mysql之一:mysqldump和LVM逻辑卷快照
  6. 在IIS中使用Gzip压缩后传送数据
  7. android布局属性
  8. Linux 命令(三)--用户管理
  9. 如何计算给定一个unigram语言模型_CS224n笔记[5]:语言模型(LM)和循环神经网络(RNNs)...
  10. QQ小工具网页版源码
  11. Hive 窗口函数lead、lag
  12. [模板] 球 体积交 体积并
  13. Silverlight智能表单(2)从工具箱到画板
  14. TransDecoder识别转录本中编码区并预测蛋白
  15. 引用RFM模型进行会员分析
  16. 【Hack The Box】linux练习-- Doctor
  17. 酷睿计算机系统吗,酷睿i3和i5的区别是什么?电脑处理器i3和i5的区别介绍
  18. 澳门惊现Google地图街景车
  19. 软件工程师就业情况以及发展空间怎么样?
  20. Ubuntu 安装 Mysql 8

热门文章

  1. JavaScript面向对象编程——Array类型
  2. mac系统下git、mysql、nginx、php的环境搭建
  3. 【Java基础】Java基本数据类型与位运算
  4. 蚂蚁金服高级技术专家徐红星 :蚂蚁金服大数据开放式创新实践
  5. RTC是DS1339,驱动采用的是rtc-ds1307.c
  6. 如何在Android手机上进行Google Map的开发。
  7. /usr/bin/ld: cannot find -lmysqlclient_r
  8. 【修订】为什么OO方法是有本质缺陷的?
  9. 单网卡Squid AS4 U5 设置
  10. SQL优化避免索引失效