是否有 public psk 服务器来测试 tls 握手?

Is there a public psk server to test tls handshake?

我想要的是在 psk 激活时测试 tls 握手。 我还希望看到在客户端(我的笔记本电脑)和 public 服务器之间连接期间交换的每个 http header。 现在我想知道是否有 public psk tls 服务器可以让我进行测试。

此致。

我怀疑互联网上是否有使用 PSK 的 Web 服务器开放用于 public 测试。我也怀疑浏览器是否支持 PSK 密码套件。但是您可以使用带有 openssl 的 PSK 来设置您自己的 Web 服务器:

openssl s_server -psk 1a2b3c4d -nocert -www

以及匹配的客户:

openssl s_client -connect 127.0.0.1:4433 -psk 1a2b3c4d

关于HTTP协议:它是独立于TLS层的,即无论是使用PSK还是普通的证书认证都不会改变。

即使某些 public TLS 服务器支持 PSK,您也无法使用它测试您的客户端。 public 密钥身份验证(大多数 TLS 服务器使用)的工作方式与 PSK 之间存在根本区别。

Public 密钥认证: 在 Public 密钥服务器身份验证(不涉及客户端身份验证的那些)的情况下,服务器发送一个证书,其中包含一个 Public 密钥,客户端加密它的预主密钥并将其发送到服务器只有服务器可以解密。这样既有相同的pre-master secret,又可以用同一套推导进一步推导出最终密钥。

预共享密钥: 顾名思义,预共享要求双方拥有相同的预共享密钥。他们只是在他们之间交换 ID,以指示他们将使用哪个预共享来生成最终密钥。

因此,即使有支持 PSK 的服务器,您也应该拥有与它相同的一组(或至少一个)密钥,这是不可能的,因为这些服务器不会与任何人共享它们的密钥除了应该与(合法客户)共享的人之外。

所以,你最好的办法就是使用openssl的测试客户端和服务器工具进行测试。