ImportNew 一周資訊 : JDK 9 , 10 與 11 中的安全改進
(點擊
上方公眾號
,可快速關注)
來源:lmportNew - 唐尤華
ImportNew小編為您搜集有關Java業界、資源一周資訊(2018.12.24)。
(內容無特殊說明均為英文,這裡僅做摘編,點擊鏈接可直達原文。)
1. JDK 9, 10 與 11 中的安全改進:來自 javaadvent
解讀
:TLS 握手流程有以下9步:
客戶端:發送」hello」(TLS版本、密碼)
伺服器:發送」hello」(伺服器證書、TLS版本、密碼)
客戶端:驗證伺服器證書及加密參數
客戶端:發送客戶端證書
客戶端:發送秘鑰
伺服器:驗證客戶端證書
客戶端:結束
伺服器:結束
客戶端與伺服器開始交換信息
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 、HikariCP 。那麼問題來了,這些連接池解決方案好使嗎?這篇文章對比了 C3P0 和 HikariCP 默認值使用情況,最後的結論是「別相信我,也不要相信默認值」。C3P0:
https://www.mchange.com/projects/c3p0/
HikariCP
https://github.com/brettwooldridge/HikariCP
4. Java8 默認方法介紹以及對 API 設計的影響:來自 javaadvent
解讀
:在引入默認方法之前,要為 interface 添加實現,必須通過 abstract 類再進行繼承。這麼做的問題,以 java.util 中的 List 為例,會造成不符合面向對象的設計,比如 static sort() 方法。Java8 引入的默認方法提供了新的解決方法,通過在 List 介面中加入 sort() 方法改進了 API 設計。
5. Eclipse Collection 編程練習的19種解答:來自 javaadvent
解讀
:Eclipse Collection Java 集合框架對 List、Set 和 Map 進行了優化,提供一套豐富的流式 API。這篇文章中,按照教程 給出了19種解答。http://eclipse.github.io/eclipse-collections-kata/pet-kata/#/
6. Java 安全 API 動畫演示:來自 javaadvent
解讀
:Java 安全動畫(Security Animated)項目是一個通過動畫、代碼段介紹 Java 安全的開源項目
。內容涵蓋 JDK 安全沙箱模型、JDK 安全開發庫、主流框架安全機制(例如 OSGi,、JavaEE、Spring)及安全開發庫 (如 BouncyCastle)。開源項目:
https://github.com/martinfmi/java_security_animated
整個演示包含以下章節:
- 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 解決進展。
【關於投稿】
如果大家有原創好文投稿,請直接給公號發送留言。
① 留言格式:
【投稿】+《 文章標題》+ 文章鏈接
② 示例:
【投稿】《不要自稱是程序員,我十多年的 IT 職場總結》:http://blog.jobbole.com/94148/
③ 最後請附上您的個人簡介哈~
看完本文有收穫?請轉發分享給更多人
關注「ImportNew」,提升Java技能


※4周,從入門小白到爬蟲老炮兒,薪資水平超過60% IT 新手!
TAG:ImportNew |