我正在尝试找出用于 Web 服务器上 TLS 握手的密码套件版本。
- 在Windows 和 Windows Server 中启用 Schannel 事件日志记录之后,我将注册表设置为 0x05(信息、成功和错误),并且可以在事件查看器中查看日志。
- 我还可以找到Event ID 36880: An SSL (client or server) Handshake Completed Successfully事件,其中我可以看到如下内容:
A TLS client handshake completed successfully. The negotiated cryptographic parameters are as follows.
Protocol version: TLS 1.2
CipherSuite: 0xC030
Exchange strength: 384 bits
Context handle: 0xABC
Target name: x.x.x.x
Local certificate subject name:
Remote certificate subject name: CN=*.xyz.com
CipherSuite版本(在本例中为 0xC030)是我感兴趣的。
为了进一步测试这是否正常工作,我使用 OpenSSL 使用特定密码套件执行 TLS 握手。
openssl s_client -connect mywebsite.com:443 -cipher AES128-GCM-SHA256
>
<omitted>
SSL handshake has read 4702 bytes and written 603 bytes
Verification: OK
---
New, TLSv1.2, Cipher is AES128-GCM-SHA256
Server public key is 2048 bit
Secure Renegotiation IS supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
<omitted>
我可以看到握手确实成功了。但是,在检查 EventViewer 时,我仍然看到 CipherSuite 版本为 0xC030而不是预期的 0x009C 的SCHANNEL 事件(使用支持的密码套件来识别密码套件的十六进制值)。
尽管与特定密码套件进行了握手,但为什么我在 EventViewer 中看不到正确的密码套件版本的任何指示?
感谢您的帮助,谢谢!