一、前言
有一次面试被问到:为什么https是安全的,http是不安全的?答案就是 https = http + SSL/TLS,然后就是这篇博客介绍 SSL/TLS 了。
二、SSL/TLS
2.1 SSL/TLS是什么
SSL 英文全称secure sockets layer,译为安全套接层;TLS是SSL的继任者,英文全称transport layer security,译为叫传输层安全。
说白点,就是在明文的上层和TCP层之间加上一层加密,这样就保证上层信息传输的安全。最常见的应用,HTTP协议是明文传输,加上SSL层之后,就有了雅称HTTPS。它存在的唯一目的就是保证上层通讯安全的一套机制。
SSL/TLS 的发展依次经历了下面几个时期,像手机软件升级一样,每次更新都添加或去除功能,比如引进新的加密算法,修改握手方式等。
SSL1.0: 已废除
SSL2.0: RFC6176,已废除
SSL3.0: RFC6101,基本废除
TLS1.0: RFC2246,目前大都采用此种方式
TLS1.1: RFC4346
TLS1.2: RFC5246,没有广泛使用
TLS1.3: IETF正在酝酿中
SSL已经全部废除,只要讨论TLS就好了,所以下面我们将介绍TLS1.x 如何保证通讯安全。