starttls 与ssl的区别

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了starttls 与ssl的区别相关的知识,希望对你有一定的参考价值。

SSL和TLS都提供了加密2台计算机(如服务器和客户端)之间通信的办法. TLS是SSL的继任者, 所以除非提到具体协议的版本,TLS和SSL这2个词是可以混用的, 在大多数情况下的意思相近.
STARTTLS是一种把已经存在的一条不安全的链接, 用SSL/TLS的加密方法, 把这条不安全的连接升级成安全的连接. 注意, 尽管STARTTLS里面只有"TLS", 但是你既可以用TLS也可以用SSL.
SSL/TLS的版本号
由于历史原因, SSL和TLS之间的版本号顺序并不一致, 当TLS代替SSL作为下一代的加密标准时, TLS采用了新的版本号, 并且
新的版本号下面还有小版本号. 所以按照时间顺序, SSL/TLS的软件版本序号从最老到最新的顺序应该是: SSL v2, SSL v3, TLS v1.0, TLS v1.1, TLS v1.2, TLS v1.3
参考技术A STARTTLS是对纯文本通信协议的扩展。它提供一种方式将纯文本链接升级为加密连接(TLS或SSL),而不是另外使用一个端口作加密通信。
SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS与SSL在传输层与应用层之间对网络连接进行加密。

STARTTLS 与 SSL/TLS [关闭]

【中文标题】STARTTLS 与 SSL/TLS [关闭]【英文标题】:STARTTLS vs SSL/TLS [closed] 【发布时间】:2011-07-29 06:18:35 【问题描述】:

邮件客户端提供两种设置,即 STARTTLS 和 SSL/TLS。 STARTTLS 和 SSL/TLS 有什么区别?

【问题讨论】:

您可能还会发现许多电子邮件客户端在说 TLS 与 SSL 时表示 STARTTLS 与 SSL/TLS。 (几个月前有一个similar question。) serverfault.com/questions/523804/… 【参考方案1】:

我读过的最清楚的解释来自 FastMail:

SSL 和 TLS 都提供了一种加密通信通道的方法 在两台计算机之间(例如您的计算机和我们的服务器)。 TLS 是 SSL 的后继者,术语 SSL 和 TLS 可以互换使用 除非您指的是协议的特定版本。

STARTTLS 是一种获取现有不安全连接并升级 使用 SSL/TLS 进行安全连接。请注意,尽管有 TLS 在名称中,STARTTLS 并不意味着你必须使用 TLS,你可以使用 SSL。

阅读他们掌握的其余信息,包括关于端口号和 POP/IMAP 与 SMTP 的讨论,请点击此处:https://www.fastmail.fm/help/technology_ssl_vs_tls_starttls.html

【讨论】:

【参考方案2】:

这个问题很模糊,但我想我明白了。 STARTTLS 表示“显式 TLS”,在常规端口上建立连接,然后发送 STARTTLS 命令以启动 SSL 握手并切换到保护模式。另一个选项可能在专用端口上定义隐式 SSL/TLS。在隐式模式下,首先发生握手,然后应用程序级协议在已建立的安全通道上运行。

【讨论】:

【参考方案3】:

如果您选择“TLS if available”,Thunderbird 将与邮件服务器建立 TCP/IP 连接并发送命令询问邮件服务器具有哪些功能。如果它说它支持 STARTTLS,Thunderbird 会将连接更改为 TLS 连接。但是,如果邮件服务器不支持 STARTTLS,则连接不会失败。 Thunderbird 继续使用正常连接。这是一个安全风险,因为 Thunderbird 不会像浏览器那样显示一些图标来指示连接是否安全,而且您很容易受到中间人攻击 (MITM) 的攻击。

来源: http://kb.mozillazine.org/Secure_connections_-_Thunderbird

【讨论】:

以上是关于starttls 与ssl的区别的主要内容,如果未能解决你的问题,请参考以下文章

openssl 为 STARTTLS 协商 SSL 加密

支持 GMail TLS/STARTTLS 与 SSL 的 Curl SMTP 命令行参数是啥

SSL vs TLS vs STARTTLS (转)

无法发送AUTH LOGIN命令。错误:530 5.7.0必须首先发出STARTTLS命令

后缀 - 必须先发出 STARTTLS 命令

PHP - 使用 STARTTLS 和自签名证书的 Swiftmailer