问题标签 [tls1.3]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
713 浏览

curl - 使用基本身份验证运行 put curl 请求失败

我正在尝试运行 curl put 请求,但我得到一个未经处理的响应,我担心这是基于我的服务器设置。

请求如下:

我得到的响应是 unhautorized (401)。这是详细日志:

我无法从日志中了解它失败的地方。谁能帮我理解?我直接从运行 api 的服务器运行请求。我还为 mydomain.com/cloud 添加了 CORS 允许,但没有任何改变。

在同一个 API 上,我可以在没有基本身份验证的情况下运行 POST 请求。该请求运行顺利。看起来在某些时候 TLS1.3 无法继续进行身份验证......

这是 API 文档:用户配置 API - 编辑用户

0 投票
0 回答
4092 浏览

.net - Windows 7 有没有办法支持 TLS 1.3 (.NET 4.8)

据我所知,Win7 不支持 TLS1.3,尽管这方面的信息很少。Windows 7 有没有办法支持 TLS1.3,如果有,该怎么做?

我已经在支持 TLS1.3 的 .NET 4.8 中编写了我的应用程序,但 Windows 7 仍然无法建立连接。

0 投票
1 回答
244 浏览

ssl - TLS 1.3 协议是否需要 KeyUpdate 功能?

在 TLS 1.3 (RFC8446) 中,有一个新的 HS 消息“KeyUpdate”,它允许任一对等方请求密钥更新。我们正在尝试确定“KeyUpdate”是否是 TLS 1.3 的必需功能。通过阅读 RFC8446,KeyUpdate 似乎不是您可以在协商阶段关闭的选项。

我一直在针对https://tls13.1d.pw(仅限 TLS1.3 的 Web 服务器)测试我们的命令行 TLS 客户端,但是当服务器发送“KeyUpdate”记录时它无法获取页面,因为“KeyUpdate” ' 不受我们使用的 TLS 实现的支持。

有人知道是否需要该功能吗?

此外,使用 TLS 1.3 协议针对真实服务器测试命令行 TLS 客户端的最佳方法是什么?我可以将我们的客户端连接到像 google.com 这样的服务器,但我不知道如何导致足够大的流量来了解 KeyUpdate 在现实生活中是否常用。

非常感谢任何输入!

0 投票
1 回答
1659 浏览

wireshark - MitmProxy 透明代理 + Wireshark - 解密 TLS 1.3 流量

我有如下设置来检查来自设备的流量。

Device <---> MitmProxy (Transparent Proxy mode) + Wireshark <---> Internet

用于调用 MitmProxy 的命令:SSLKEYLOGFILE="$PWD/mitmproxy/sslkeylogfile.txt" mitmweb --mode transparent --showhost

MitmProxy 支持记录 SSL/TLS 主密钥,这允许 Wireshark 解密相应的 TLS 流量。

但是,我注意到我的内容SSLKEYLOGFILE仅包含CLIENT_RANDOM解密 TLS 1.2 流量的行。

要解密 TLS 1.3 流量,我知道需要 4 secrets- CLIENT_HANDSHAKE_TRAFFIC_SECRET、和SERVER_HANDSHAKE_TRAFFIC_SECRET,我的.CLIENT_TRAFFIC_SECRETSERVER_TRAFFIC_SECRETSSLKEYLOGFILE

在此设置中如何继续解密 TLS 1.3?

0 投票
1 回答
756 浏览

ssl - TLS 1.3 早期数据放在哪里 $ssl_early_data

我已经设置ssl_early_data on;为我的 nginx.conf (内部http { })并根据这些命令,

它确实工作正常。
根据nginx 文档https://nginx.org/en/docs/http/ngx_http_ssl_module.html#ssl_early_data),建议设置proxy_set_header Early-Data $ssl_early_data;.
我的问题是:我在哪里设置这个?紧接着ssl_early_data on;,还在里面http { }

0 投票
0 回答
381 浏览

java - Windows 10 上的 TLS 1.3 密钥更新问题

我们有一个通过 TLS 进行通信的客户端/服务器架构。我们有 Java、Linux 和 Windows 客户端,并使用SSLSocketJava、Linux 上的 OpenSSL 和基于 SSPI 的 Windows 实现。不幸的是,我没有找到太多关于 Windows 10 的信息(除了可以启用 TLS 1.3 并且不应该在生产中使用)。

在测试我们的更改以支持 TLS 1.3 时,当一侧是 Windows 而另一侧是 Java 或 OpenSSL 实现时,当 Java 触发密钥更新(或者我们在 OpenSSL 中手动触发密钥更新)时,我看到以下问题:

Java调试:

数据到达 Windows 端并放入DecryptMessage. 它返回SEC_E_INVALID_TOKEN,但缓冲区更改为

这实际上是Java端发送的以握手记录头(0x16)为前缀的解密数据。

我的问题是:这是限制之一,尚未在 Windows 中完全实现吗?或者这应该已经起作用并且我做错了什么?在这种情况下,我希望 SEC_I_RENEGOTIATION 返回代码,并且我必须将解密的数据放入InitializeSecurityContextor AcceptSecurityContext

我在 Windows 10 版本 2004(操作系统版本 19041.330)上对此进行了测试。

问候, 安德烈亚斯

0 投票
0 回答
98 浏览

excel - 用于检索网站数据的 vba 代码不适用于 tls1.3。我能做些什么?

我有这个从docuwiki检索数据的代码:)。但他们开始使用 tls1.3,我的代码不再工作了。有什么我能做的吗?我有 win 7,我正在使用 excel 2007 运行 vba 脚本时出现的错误是“安全通道支持中发生错误”

如果这是一个愚蠢或不完整的问题,我深表歉意。

0 投票
2 回答
540 浏览

php - 来自 nginx 的 $ssl_early_data:应用程序应该以某种方式使用它吗?

我正准备打开 nginx ssl_early_data以启用带有 TLS 1.3 的 RTT-0。

我明白,如果我做得不对,重放攻击就成为可能。我了解,为防止这种情况,您还需要使用$ssl_early_data

在早期数据中发送的请求会受到重放攻击。为了防止在应用层受到此类攻击,应使用 $ssl_early_data 变量。

我不明白的是,将这个指令放在 nginx 配置中是否足够,或者我的服务器上的 PHP 应用程序是否/如何应该以某种方式使用这个 $ssl_early_data 变量并进行一些额外的检查。

0 投票
1 回答
3268 浏览

phpmailer - 您可以仅在 phpmailer 中指定 TLS v1.3 吗?

是否可以指定 PHPMailer 中使用的加密协议版本?

尝试构建一个用于测试 SMTP 配置的小型 Web 工具。我曾经能够在 .NET 中指定协议版本,但现在我使用的是 apache,我正在尝试使用 phpmailer 在 PHP 页面中执行此操作。所以我需要让它只尝试一个单一的加密版本,比如 TLS 1.3。

我知道我可以将 smtpautoTLS 设置为 FALSE。但是我可以在 SMTPOptions 数组中指定 TLS 1.3 或 SSL v3 吗?我似乎无法在文档/示例/谷歌中找到它。

谢谢!

编辑更新代码并确认此代码仅适用于 SMTPS/隐式样式,但不适用于 STARTTLS

0 投票
2 回答
3478 浏览

apache - OpenSSL 1.1.1 它仅支持 5 个密码中的 3 个 TLS 1.3

我有一个使用 Apache Web 服务器和 OpenSSL 1.1.1 的简​​单站点。我已经按预期配置了所有内容,但在显示 TLS_AES_256_GCM_SHA384、TLS_CHACHA20_POLY1305_SHA256、TLS_AES_128_GCM_SHA256 的情况下,选择加密的其他两个 TLS_AES_128_CCM_8_SHA256、TLS_AES_128_CCM_SHA256 显示错误。

证明前三个被正确挑选

错误显示了何时选择最后两个密码

来自 httpd-ssl.conf 的代码在 这里我只更改了没有别的选择的密码,前三个它起作用了。

然后我也去检查openssl.exe是否有任何问题。我发现最后两个密码不受支持/不在密码列表中。

通过 openssl 加密列表

如何将最后两个密码添加到列表中以便我可以使用它们?或者我需要添加什么以便我可以使用它们?我正在使用它进行测试。任何帮助都将不胜感激。对不起,我的英语不好。