BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

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

| 作者 James Kao 关注 0 他的粉丝 ,译者 张凯峰 关注 1 他的粉丝 发布于 2007年6月12日. 估计阅读时间: 4 分钟 | Google、Facebook、Pinterest、阿里、腾讯 等顶尖技术团队的上百个可供参考的架构实例!

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

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT