写点什么

Java 8 已反向移植 TLS :软件所有者可通过 HTTP/2 进行通信

  • 2020-04-14
  • 本文字数:1114 字

    阅读完需:约 4 分钟

Java 8 已反向移植 TLS :软件所有者可通过HTTP/2进行通信

应用层 TLS 协商的改进已经被反向移植到 Java 8 中,这使得客户端能够利用 HTTP/2 的网络能力。在此之前,需在 Java 9 及更高版本上才能使用该功能。


这一变化对老的客户端来说是一个重要的增强,因为 New Relic 最近的“Java状态”报告显示:85%的系统都是运行在 Java 8 上。该反向移植,最初是作为JEP 244随 Java 9 一起发布的,它使得在 Java 8 系列中更新的客户端能够通过请求 HTTP/2 流量与最新的非 Java 系统进行通信。如果不进行更新,这些客户端将被迫采用旧的 TLS 结构,或服务端应用程序必须在其前面采用一个 SSL 终结器来支持较新的应用程序协议。 KeyCDN 已经发布了一个有关应用层协议协商( Application Layer Protocol Negotiation )工作原理的图示。


每种技术在很多生产系统中都已经使用了好些年。



HTTP/2 是建立在一个名为SPDY的Google驱动计划之上。尽管底层 SPDY 的工作在 Java 8 的时间框架内是可用的,但是在 Java 9 发布之前,还没有可用的正式行业标准。在 HTTP/2 之前,SPDY 是一个由 Google 驱动的活动,可以在无通知的情况下,随时更改或取消。


云分析师 Corey Quinn调侃过Google对诸如在线讨论等产品的支持,“我只是不明白为什么 Zoom 是事实上的视频会议解决方案,而不是 Google Meet、Hangouts、Duo、Allo、Talk、Hangouts Chat、GTalk、Buzz、Wave、Messages、Spaces、Voice……” Google Meet 之后的每个项目都取消了 Google 聊天服务。Quinn 随后又上传了一张Google标识“G”上画有一只恶作剧的鹅的照片,他说:“故意贬低事物。你这只讨厌的鹅。”作为 HTTP/2 协议的主要领导者,Google 直到与形成该标准的同行技术组织进行了管理良好的协调之后,才逐步淘汰 SPDY。随后,该功能被包含在后续的主要 Java 版本中。


应用层协议协商(Application Layer Protocol)可以在客户端和服务器应用程序之间实现更好的压缩,从而可以在客户端问候握手期间根据适当的协议进行交换和解码。


不熟悉 TLS 内部工作原理的开发人员可以利用不同的在线工具(例如Hardernize)来提供“红色-琥珀色-绿色“的安全指标。这些工具并不关注 TLS 和算法配置的个别实践,而是评估服务器的响应和 TLS 的握手信息,以确定是否有其他问题,例如算法的可用性、证书密钥的强度、HTTP 的报头或服务器管理员和安全专业人员感兴趣的其他来源。


希望利用 TLS 改进的运营团队可以通过公共的 Java 8 提供程序(例如 AdoptOpenJDK)获得反向移植。希望利用此共呢个的开发团队应该考虑遵循标题为“从Java 8 到 11”的 Microsoft 指南。


原文链接:


TLS Improvements Backported to Java 8


2020-04-14 11:502177

评论

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

你需要用战略耐心实现职业目标

石云升

读书笔记 11月日更

阿里巴巴服务网格技术三位一体战略背后的思考与实践

阿里巴巴云原生

阿里云 云原生 服务网格 三位一体

使用ES6编写一个超简单的搜索算法

吴脑的键客

JavaScript 大前端

激发数字新活力 打造发展新优势

CECBC

DDD领域驱动设计落地实践系列:战略设计和战术设计

慕枫技术笔记

Java 后端 签约计划第二季

网络监控原理

喀拉峻

网络安全 安全 网络

Python Qt GUI设计:QClipboard剪贴数据类(基础篇—19)

不脱发的程序猿

Python PyQt GUI设计 QClipboard 剪贴板

架构训练营 - 模块五

Geek_9de3de

架构实战营

AOP 插件就这?上手不用两分钟!!

4ye

Java spring 程序员 后端 签约计划第二季

【死磕Java并发】-----J.U.C之深入分析CAS

chenssy

11月日更 死磕 Java 死磕 Java 并发

使用redis生成唯一编号

喵叔

11月日更

[Pulsar] 消息的消费

Zike Yang

Apache Pulsar 11月日更

百度ERNIE新突破!登顶中文医疗信息处理权威榜单CBLUE冠军

百度大脑

人工智能

Rust 元宇宙 7—— 异步和消息

Miracle

rust 异步 元宇宙

OpenELB 进入 CNCF Sandbox,让私有化环境对外暴露服务更简单

青云技术社区

云计算 云原生

面试官:int和Integer有什么区别?为什么要有包装类?

王磊

架构营模块五作业

GTiger

花了2个钟才搞懂这AOP为啥没生效,水友却睡着了……

4ye

Java spring 程序员 后端 签约计划第二季

架构训练营 - 模块六

Geek_9de3de

架构实战营

12.04 Serverless Meetup 深圳站 | Call 你来参加

阿里巴巴云原生

阿里云 Serverless 云原生 活动

如何用JavaScript实现2+2=5?

汪子熙

JavaScript 大前端 语音识别 语音合成 11月日更

中国首批区块链订单融资缘何落地雄安?

CECBC

面试官:说一下final关键字和final的4种用法?

王磊

元宇宙是人类文明不可避免的一次内卷

CECBC

Spring AOP内功修炼

4ye

Java spring 程序员 后端 签约计划第二季

面试官:final、finally、finalize 有什么区别?

王磊

java面试

微博系统中”微博评论“的高性能高可用计算架构设计

Beyond Ryan

企业决策智能项目的五种失败姿势

脑极体

29 K8S之ReplicaSet控制器

穿过生命散发芬芳

k8s 11月日更

在线文本并集计算工具

入门小站

工具

超强实时跟踪系统首次开源!支持跨镜头、多类别、小目标跟踪!

百度大脑

人工智能 人工智能摄像头

Java 8 已反向移植 TLS :软件所有者可通过HTTP/2进行通信_语言 & 开发_Erik Costlow_InfoQ精选文章