TLS与SSL之间关系

TLS与SSL之间关系

原文:SSL vs. TLS – What’s the Difference?

疑问

在看https的定义的时候,常常有https是http+ssl/tls这样的说法,相信很多人搞不清楚为什么要叫ssl/tls?为什么不是直接叫http+ssl或直接叫http+tls?为什么这这两个要一起说?难道说https有两套实现方式?一套是http+ssl,一套是http+tls?它们到底有什么区别?

SSL和TLS简史

SSL(Secure Socket Layer)和TLS(Transport Layer Security)是一种能够在服务器/个人电脑和通过网络运行的应用程序(列如,客户端连接到web服务器)之间提供身份认证和数据加密的加密协议。SSL是TLS的前世。多年来,新版本的发布用来解决漏洞,提供更强大支持,更安全的密码套件和算法。

SSL最初是由Netscape开发的,早在1995年以SSL 2.0的方式发布(1.0从未对公众发布)。在一些漏洞被发现之后,版本2.0在1996年很快被3.0所取代。注意:版本2.0和3.0有时会写成SSLv2和SSLv3。TLS以SSL 3.0为基础于1999年作为SSL的新版本推出。

TLS协议和SSL 3.0之间的差异并不明显,但是他们都非常重要且TLS 1.0 和 SSL 3.0不具有互操作性

SSL/TLS发布日期:
– SSL 1.0,未发布公开,因为严重的安全性漏洞
– SSL 2.0,1995.02,包含一些需要在SSL3.0解决的安全漏洞
– SSL 2.0 在2011年被RFC 6176禁止
– SSL 3.0,1996,代表着该协议的完整重新设计,
– SSL 3.0也在后来June 2015被RFC 7568禁止.
– TLS 1.0 在January 1999首次在RFC 2246中定义,作为SSL 3.0的升级版本
– TLS 1.1April 2006在RFC 4346 中定义
– TLS 1.2August 2008 在 RFC 5246定义,基于TLS 1.1进行升级

你应该使用SSL还是TLS?

SSL2.0和SSL3.0已经被IEFT组织废弃(分别在2011年,2015年)多年来,在被废弃的SSL协议中一直存在漏洞并被发现 (e.g. POODLE, DROWN)。大多数现代浏览器遇到使用废弃协议的web服务时,会降低用户体验(红线穿过挂锁标志或者https表示警告)来表现。因为这些原因,你应该在服务端禁止使用SSL协议,仅仅保留TLS协议开启。

证书并不是协议

在开始担心需要用TLS证书来替换SSL证书之前,认识到证书并不依赖协议这很重要。也就是说,你不需要使用TLS证书和SSL证书。然后很多产商倾向于使用短语“SSL/TLS证书”。也许“用于SSL和TLS的证书”的说法更加准确,因为是你服务的配置而不是证书决定了你使用的协议。

你可能会继续看到被称作SSL证书的证书,因为现在人们更加熟悉这个术语。但是我们开始看到术语TLS在行业的使用不断增加,在更多人熟悉TLS之前,SSL / TLS是一种常见的折中方案。

SSL 和 TLS 是否有任何不同的加密?

事实上,这个问题的答案是肯定的。但是对于历史版本SSL 2 和 SSL 3或 TLS 1 和1.1,1.2,1.3你也可以说同样的话。SSL和TLS都是关于同一协议的,但是由于版本的不同,SSL 2,3不具有互操作性,SSL 3和TLS 1也不具有互操作性。你可以认为Transport Layer Security(TLS)仅仅是SSL v4的新名称。本质上,我们谈论的是相同的协议。
每当协议最新的版本发布时都会进行改进,添加、废弃一些功能。SSL 1从未对公众发布过,SSL 2 对外发布过,但是因为其设计带有重要缺陷,SSL 3 在 SSL 2上进行了重写,TLS 1是SSL 3的改进版本。自从TLS1.0之后很少有重大的改变,但是每次改变都很重要。
值得注意的是,SSL和TLS简单指发生在客户端和服务端的握手过程,握手本身实际不进行任何加密,它只是同意将要使用的共享秘钥和加密方式。

本文转自TLS与SSL之间关系,自己有作一些改动!

其它相关文章:
SSL与TLS有什么区别(最全面的知识点都在这)
HTTPS与HTTP区别 — TLS/SSL

Leave a Reply

avatar

This site uses Akismet to reduce spam. Learn how your comment data is processed.

  Subscribe  
Notify of

扫码在手机查看
iPhone请用自带相机扫
安卓用UC/QQ浏览器扫

TLS与SSL之间关系