写点什么

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:502052

评论

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

WTM活动回顾|WomenTechmakers 2021 Courage to Create

江湖老铁

【云图说】DDS读写两步走,带您领略只读节点的风采

华为云开发者联盟

数据库 节点 DDS 文档数据库 DDS读写

微博评论高性能高可用计算架构

Evan

可能是推荐系统最详细且简单的入门教程

JavaEdge

1月月更

模块五作业-微博评论高性能高可用计算架构

CH

架构实战营

模块五 - 微博评论系统高性能高可用设计

圈圈gor

架构实战营 #架构实战营 「架构实战营」

尚硅谷2022版Java课程体系,霸气来袭

@零度

Java 尚硅谷

低代码实现探索(二十五)DDD,事件,指令

零道云-混合式低代码平台

迪斯尼《曼达洛人》艺术总监和制作设计师亲自揭秘背后的虚拟场景制作

龙智—DevSecOps解决方案

perforce 曼达洛人 西部世界 虚拟场景

Jira Software 年度总结:12个重要功能大放送!

龙智—DevSecOps解决方案

Jira Atlassian Atlassian Jira

焱融科技年度报告如约而至,如 Beijing 初雪

焱融科技

云计算 分布式 云原生 高性能 文件存储

「元宇宙十万个为什么」:为什么元宇宙值得投资?

BeeWorks

使用 Lambda 表达式实现超强的排序功能

看山

Lambda java8 排序 1月月更

jar包与war包的部署

你?

过年回家前,先签收这份“外挂”

龙智—DevSecOps解决方案

Atlassian Confluence 到期日提醒 confluence插件

PHP 遇见 Serverless,帮你解决这些痛点!

Serverless Devs

『TDengine2021用户故事』征文活动进入投票阶段!

TDengine

tdengine

Spring 都在用的技术,你确定不过来看看?3️⃣

XiaoLin_Java

TiDB 在国信证券海量数据高并发场景中的实践

PingCAP

MultipartFile与File的一些事

华为云开发者联盟

spring File 文件 MultipartFile 中转文件

一文读懂HarmonyOS服务卡片怎么换肤

HarmonyOS开发者

HarmonyOS

ReactNative进阶(二十七):createMaterialTopTabNavigator 顶部导航组件

No Silver Bullet

1月月更 ReactNative

如何快速实现离散企业全链路数字化管理

华为云开发者联盟

数据采集 华为云IoT 智能制造 黑湖科技 数据中枢

QuanXiang 2022 Q1 开源路线图

全象云低代码

开源 工作流 低代码 表单

SAE 最佳实践范本:助力视野数科进入云原生“快车道”

Serverless Devs

Serverless SAE

认识 Express 的 res.send() 和 res.end()

编程三昧

JavaScript 前端 nodejs Express 1月月更

架构实战营模块五作业

lchx08

「架构实战营」

一起看看MySQL中的隐藏列

华为云开发者联盟

MySQL 事务 主键 唯一索引 隐藏列

java开发之Mybatis 快问快答

@零度

mybatis JAVA开发

一个低成本确保IM消息时序的方法探讨

BeeWorks

虎符推出AMM流动性资金池 支持现货专区做市赚收益

区块链前沿News

流动性 虎符 Hoo 虎符交易所 AMM

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