ImportNew一周资讯:JDK 9, 10与11中的安全改进

栏目: Java · 发布时间: 6年前

内容简介:ImportNew小编为您搜集有关Java业界、资源一周资讯(2018.12.24)。(内容无特殊说明均为英文,这里仅做摘编,点击链接可直达原文。)

ImportNew小编为您搜集有关 Java 业界、资源一周资讯(2018.12.24)。

(内容无特殊说明均为英文,这里仅做摘编,点击链接可直达原文。)

1. JDK 9, 10 与 11 中的安全改进:来自 javaadvent

解读: TLS 握手流程有以下9步:

  1. 客户端:发送”hello”(TLS版本、密码)
  2. 服务器:发送”hello”(服务器证书、TLS版本、密码)
  3. 客户端:验证服务器证书及加密参数
  4. 客户端:发送客户端证书
  5. 客户端:发送秘钥
  6. 服务器:验证客户端证书
  7. 客户端:结束
  8. 服务器:结束
  9. 客户端与服务器开始交换信息

JDK9 中的安全改进: JSSE(Java Secure Socket Extension) API

  • 支持 DTLS,在 UDP 上进行 TLS 加密
  • 加入 TLS ALPN 扩展,支持在 TLS 握手过程中加入应用协议
  • 对 TCP 进行 OCSP 加固,在 TLS 服务器上进行协议验证,节省带宽。此配置需要在客户端和服务器上同时启用
  • 默认使用 PKCS12 秘钥库:目前使用的 JKS 无法应用到 Java 以外的编程语言
  • 基于 DRBG 实现 SecureRandom
  • 利用 CPU 指令进行 GHASH 与 RSA 加密
  • 协议验证中禁用 SHA-1 协议
  • 实现 SHA-3 哈希算法

JDK10 中的安全改进:

  • JEP319 Root 证书:在 JDK 的 Cacert 秘钥库中加入 root 证书列表
  • 一些安全相关的 API 标记为移除

JDK 11 中的安全改进:

  • JEP32:TLS 1.3,在1.2版本基础上增加了许多改进
  • JDK 的 Cacert 秘钥库中增加了一些、移除了一些 root 证书

2. 用 Java 实现数据库批量更新:来自 javaadvent

解读: 批量更新可以获得更好的执行效率。这篇文章介绍了如何通过 JDBC API、Spring JDBCTEMPLATE、JOOQ、Hibernate 实现批量更新。

3. 连接池你造吗:来自  javaadvent

解读: 传统 Web 访问存在这样的问题,打开慢,忘记关闭连接会造成内存泄漏。使用数据库连接池是一种改进方法,比如 C3P0 ( https://www.mchange.com/projects/c3p0/ )、 HikariCP ( https://github.com/brettwooldridge/HikariCP )。那么问题来了,这些连接池解决方案好使吗?这篇文章对比了 C3P0 和 HikariCP 默认值使用情况,最后的结论是“ 别相信我,也不要相信默认值 ”。

4. Java8 默认方法介绍以及对 API 设计的影响:来自  javaadvent

解读: 在引入默认方法之前,要为 interface 添加实现,必须通过 abstract 类再进行继承。这么做的问题,以 java.util 中的 List 为例,会造成不符合面向对象的设计,比如 static sort() 方法。Java8 引入的默认方法提供了新的解决方法,通过在 List 接口中加入 sort() 方法改进了 API 设计。

5. Eclipse Collection 编程练习的19种解答:来自  javaadvent

解读: Eclipse Collection( https://github.com/eclipse/eclipse-collections ) Java 集合框架对 List、Set 和 Map 进行了优化,提供一套丰富的流式 API。这篇文章中,按照教程 http://eclipse.github.io/eclipse-collections-kata/pet-kata/#/ 给出了19种解答。

6. Java 安全 API 动画演示:来自  javaadvent

解读: Java 安全动画(Security Animated)项目是一个通过动画、代码段介绍 Java 安全的开源项目 https://github.com/martinfmi/java_security_animated 。内容涵盖 JDK 安全沙箱模型、JDK 安全开发库、主流框架安全机制(例如 OSGi,、JavaEE、Spring)及安全开发库 (如 BouncyCastle)。

整个演示包含以下章节:

- sanbox model
- security APIs:
	- JAAS
	- JSSE (SSL/TLS/DTLS)
	- GSSAPI/Kerberos
	- JCA (JCE/Crypto)
	- SASL
	- PKI (CertPath)
	- JAR Verification
	- XML Signatures
- tools: 
	- keytool
	- jarsigner
	- policytool
	- kinit
	- klist
	- ktabs

说明:项目 pom.xml 不全,可以关注 issue 解决进展。

关于作者:唐尤华

ImportNew一周资讯:JDK 9, 10与11中的安全改进

我喜欢程序员,他们单纯、固执、容易体会到成就感;面对压力,能够挑灯夜战不眠不休;面对困难,能够迎难而上挑战自我。他们也会感到困惑与傍徨,但每个 程序员 的心中都有一个比尔盖茨或是乔布斯的梦想“用智慧开创属于自己的事业”。我想说的是,其实我是一个程序员。(新浪微博: @唐尤华

查看唐尤华的更多文章 >>


以上所述就是小编给大家介绍的《ImportNew一周资讯:JDK 9, 10与11中的安全改进》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

大规模Web服务开发技术

大规模Web服务开发技术

伊藤直也、田中慎司 / 李剑 / 电子工业出版社 / 2011-7 / 59.00元

Hatena是日本最大的Web服务提供商之一,它提供的服务包括关键字(类似于维基百科)、博客、相册等。《大规模Web服务开发技术》由伊藤直也、田中慎司所著,内容主要来自Hatena为学生们举行的暑期实习的课程,内容涵盖广泛,介绍了性能优化、分布式、算法、系统架构等各个方面,甚至还介绍了硬件的经济成本,是运维工程师们必不可少的参考书。书中还包括几个算法实习课题,介绍了压缩算法、全文搜索等算法的实现方......一起来看看 《大规模Web服务开发技术》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

URL 编码/解码
URL 编码/解码

URL 编码/解码

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试