写点什么

Not-Yet-Commons-SSL 提供强大(而且免费)的 SSL 功能

  • 2007-06-11
  • 本文字数:1210 字

    阅读完需:约 4 分钟

Not-Yet-Commons-SSL 是 Apache 许可证下的一款 Java 类库,它提供易于使用的 API,并支持各种各样的证书格式和配置选项,来达到简化 SSL 的使用的目的。尤其是,它允许在单个 JVM 中使用多个证书,优雅地处理自签名证书,以及支持所有标准的证书格式,从而解决了一些长期以来一直存在的 Java 内建的 SSL 支持问题。

这个项目提出了五个设计目标,同时也总结了该库的特性:

使 SSL 和 Java 更加简单。你曾经想在你的 Java 应用中以一种安全的方式来使用自签名证书吗?或是在单个运行的 JVM 中使用不止一个客户端证书?你当然可以编辑你的$JAVA_HOME%/jre/lib/security/cacerts文件,或者通过-Djavax.net.ssl.keyStore=/path/to/keystore来调用 Java。这两个办法在开始的时候都很不错,但它们伸缩性并不好。你真的会想因为那些系统范围的变化,而污染掉你 JVM 中(HTTP、LDAP、JDBC、RMI 等等)每个 SSL 套接字吗?Commons-SSL 可以让你一种自然的方式对每一个SSLSocketFactory控制你需要的 SSL 选项,而且那些选项不会混入到你系统的其它部分。

增强安全性。 CRL 检查缺省是打开的。我们希望会很快添加对 OCSP 的支持!每过 24 小时就不得不从 Thawte 和 Verisign 下载大约 500KB 大小的 CRL 文件,这的确很令人讨厌。OCSP 就是针对它的改善。

增强灵活性。一旦创建SSLSocketFactory,就可以对检查主机名、过期期限、CRL 的和许多其他的选项进行开关设置。

支持更多的文件格式,而且更加智能化。- commons-ssl 支持 PKCS8 的超过 50 种格式 ,以及 PEM 或 DER 编码的 OpenSSL 加密私钥。

  • X.509 证书可以使用 PEM 或者 DER 编码。也可以以 PKCS7 链的形式产生(公平地说,Java 一直支持这个)。
  • PKCS12 文件可以用 PEM 编码(由openssl pkcs12创建)。
  • 在 Base64-PEM 的解析过程中对多余的空格或者注释更加宽容,尤其是超出 Base64 区段的部分。

对 KeyMaterial 或 TrustMaterial 类型的自动检测。消费者不需要知道 keystore 是 PKCS12 还是 JKS。他们只需要知道密码来解密私钥。

Not-Yet-Commons-SSL 是在英属哥伦比亚信用联盟中心(Credit Union Central of British Columbia)开发的,并于 2006 年捐赠给 Apache 软件基金会。它现在正处于 Apache 孵化器中,希望很快在接下来的几个月成为 Apache-Commons 项目的一部分。

Dejan Bosanac 就与 Java 的内建功能做了比较,写到:

如果你曾经使用过 Java 的 SSL 套接字连接,你可能会知道 Java 缺省支持它自己的 JKS 和 PKCS12 证书格式。对于那些需要使用 OpenSSL 的人来说,通常建议把 key 和证书转化成 PKCS12,然后使用 JDK 提供的keytool命令导入到 keystore。 虽然这对大多数应用程序来说算不了什么,但还是应该有一个更好的解决方案提供给那些非常依赖 SSL 的项目。 Not-Yet-Commons-SSL 项目之所以叫这个名字是因为,它还不是 Apache 的官方项目,它的目标在于简化 Java 和 SSL 的集成。

查看英文原文: Not-Yet-Commons-SSL Provides Powerful (and Free) SSL Capabilities

2007-06-11 00:004441
用户头像

发布了 127 篇内容, 共 46.6 次阅读, 收获喜欢 5 次。

关注

评论

发布
暂无评论
发现更多内容

探索“人工智能+”战略下的企业切入点

不在线第一只蜗牛

云原生与ChaosMeta

ChaosMeta

鸿蒙HarmonyOS实战-ArkUI组件(List)

蜀道山

鸿蒙 HarmonyOS 鸿蒙开发 鸿蒙系统

人工智能和机器学习(AI/ML)在软件测试中的应用

Geek_e575df

小程序生态是更灵活构建超级App的方式

FinFish

小程序生态 小程序容器 超级app

火山引擎数据飞轮行业研讨会在京举行 聚焦互联网企业数智化升级

字节跳动数据平台

大数据 数字化转型 云服务 火山引擎 企业号 4 月 PK 榜

HarmonyOS 性能优化

不在线第一只蜗牛

HarmonyOS 鸿蒙系统

软件开发生产线CodeArts 4月新特性预告,一睹为快!

软件开发 华为云

MQTT Broker 白皮书:全面实用的 MQTT Broker 选型指南

EMQ映云科技

mqtt mqtt broker

Elasticsearch 原理与在直播运营平台的实践

字节跳动云原生计算

搜索 ES

如何将二维码收集的某项信息作为重点展示?

草料二维码

二维码 草料二维码

亚马逊云集齐 Claude 3 全家桶;世界数字技术院发布大模型安全国际标准丨 RTE 开发者日报 Vol.187

声网

鸿蒙HarmonyOS实战-ArkUI组件(mediaquery)

蜀道山

鸿蒙 HarmonyOS 鸿蒙开发 MediaQuery

智能工单,一键报障|云智慧轻帆云打造连锁企业服务管理新体验

云智慧AIOps社区

运维 IT服务管理 工单管理 工单系统 智能工单

权威答案!灵犀医疗引入 Zilliz Cloud,千万级向量数据库赋能医学 AIGC 平台

Zilliz

Zilliz AIGC zillizcloud 灵犀医疗

从源码到实战:探寻App中的等待神秘力量,强制等待 vs 隐式等待对决

测吧(北京)科技有限公司

测试

TapData 正式上线 MongoDB 生态合作伙伴专栏,提供更专业的企业级实时数据集成解决方案

tapdata

mongodb 合作伙伴 生态伙伴

C++ 类方法解析:内外定义、参数、访问控制与静态方法详解

小万哥

程序人生 编程语言 软件工程 C/C++ 后端开发

聚道云软件连接器助力企业实现滴滴出差报销自动化

聚道云软件连接器

案例分享

跨境电商新篇章:alibaba.item_get API接口助力商家精准营销

技术冰糖葫芦

api 货币化 API 接口 pinduoduo API

什么是云渲染?云渲染平台怎么使用?云渲染怎么收费?

3DCAT实时渲染

云渲染 实时渲染 云渲染价格

​ 【教程】APP代码混淆的方法和利弊与破解APP过程

世界读书日!边阅读边做笔记,这个一站式知识梳理软件太酷了吧!

彭宏豪95

AI 思维导图 阅读 在线白板 AIGC

英特尔发布新一代神经拟态系统Hala Point,11.5亿神经元,12倍性能提升

E科讯

英特尔与生态伙伴紧密合作,OPS 2.0标准助力智慧教育再升级

E科讯

Not-Yet-Commons-SSL提供强大(而且免费)的SSL功能_Java_James Kao_InfoQ精选文章