0

我正在使用 Chrome 版本 85.0.4183.83(官方构建)(64 位)检查 TLS 客户端 hello 的简单连接。有一个带有奇怪代码编号的意外版本标记为“未知”。我知道 TLS 版本,标准中注明了它们的编号。我看着奇怪的版本号,无法弄清楚。谁能帮我确定这个未知的版本号是什么?Chrome 是否出于任何目的这样做?

这是版本:

Supported Version: Unknown (0x3a3a)

看到这个截图: https ://i.imgur.com/NT70mRg.png

4

1 回答 1

0

这是 TLS “Grease”的一部分,其中 TLS 客户端发送不存在的密码套件、支持的版本、TLS 扩展等,以确保 TLS 堆栈的实现不会过于依赖他们在网络上看到的特定实现.

在过去的实现中,通常并没有真正实现标准,而是根据现实世界中使用的内容做出假设。这导致这些实现因更新的 TLS 版本、新密码等而失败。这使得有必要通过诸如 TLS 降级之类的问题来解决此类损坏的 TLS 堆栈,这会导致其自身的问题。

为了清理这些混乱并在 TLS 堆栈中强制执行更健壮的行为,一些 TLS 实现(如 Chrome 中的 BoringSSL)添加了RFC 8701中定义的随机内容。

于 2020-11-29T18:14:22.803 回答