我在SMTP + STARTTLS事务中成功启用了加密,但我想了解一些有关TLS连接的详细信息。在成功打开流连接后,加密就像这样启用:
$encrypted = stream_socket_enable_crypto(
$smtp_conn,
true,
STREAM_CRYPTO_METHOD_TLS_CLIENT | STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT | STREAM_CRYPTO_METHOD_TLSv1_1_CLIENT
);
$encrypted
只包含true
,这对我没有多大帮助。我试图找出我可以在哪里获得的东西,如TLS版本,域,公共证书,密钥交换机制,验证状态,哈希和连接中使用的密码。它必须是启用加密的流的属性,因此我一直在查找stream_get_meta_data
之类的内容,但仅包含此内容:
[
'timed_out' => false,
'blocked' => true,
'eof' => false,
'stream_type' => 'tcp_socket/ssl',
'mode' => 'r+',
'unread_bytes' => 0,
'seekable' => false,
]
我也看过stream_context_get_params
和stream_context_get_options
,但都没有包含任何有趣的内容。
在NodeJS中,要查看的地方将在the TLS module,其中包含我正在寻找的那种东西。
我在哪里可以找到更多来自PHP的TLS信息?