我正在尝试创建一个电子邮件客户端作为学习体验。大多数现代电子邮件服务器都需要使用 TLS。使用 OpenSSL 时s_client
,我可以使用标志-starttls
,这样s_client
就可以自动与服务器进行 TLS 协商。但是,当使用原始 C API 而不是 openssl 实用程序时,我不确定如何实现协商。
据我所知,我必须首先从不安全的套接字连接到服务器的 SMTP over TLS 端口,调用命令STARTTLS
,然后通过执行 TLS 协商切换到安全套接字。这样对吗?
我正在尝试创建一个电子邮件客户端作为学习体验。大多数现代电子邮件服务器都需要使用 TLS。使用 OpenSSL 时s_client
,我可以使用标志-starttls
,这样s_client
就可以自动与服务器进行 TLS 协商。但是,当使用原始 C API 而不是 openssl 实用程序时,我不确定如何实现协商。
据我所知,我必须首先从不安全的套接字连接到服务器的 SMTP over TLS 端口,调用命令STARTTLS
,然后通过执行 TLS 协商切换到安全套接字。这样对吗?