深入解析:如何修复SSL / TLS握手失败错误(上)

接下来的三期内容我们来讨论SSL / TLS握手失败错误及其修复方法。很多人好奇,一个错误问题和修复问题可以分三期内容讲?有啥重点吗?不信你耐心看看就知道了。

针对互联网用户和网站所有者的SSL / TLS握手失败错误修复程序

像许多SSL错误消息一样,SSL握手错误可以从客户端和服务器端触发导致,有时候我们可以由常规的互联网用户进行修复,但有时候它表示网站的配置问题。

无论什么原因,这都可能是令人感到沮丧的SSL错误,因为它会阻止你与尝试访问的网站建立安全连接。这无论对用户或者网站来说都是不利的。对网站而言,它会驱散掉企业的业务(可能使客户直接推向竞争对手的怀抱)。

所以这几期的内容我们将来说一说什么是SSL/ TLS握手,然后再介绍SSL / TLS握手失败错误的原因以及可以解决的方法。

什么是SSL / TLS握手?

在每个HTTPS开始建立连接的时候,客户端(互联网用户的Web浏览器)和服务器(托管网站)都必须进行一系列检查,以便双方进行身份验证并确定参数,然后再进行加密的连接。这被称为TLS握手,也有业内人士仍将其称为SSL握手。

(由于SSL是已弃用的协议,所以从技术上讲不是很准确的。但是,由于人们仍在使用该术语,因此我们在整篇文章中仍会将其称为SSL。所以以下你会看到“ SSL握手”和“ TLS握手”在整个内容中的互换使用,但要知道我们在讨论的是TLS握手。)

接着说,我们来看看TLS握手过程中完成的三件事:

· 将服务器认证为非对称公钥/私钥对的合法所有者。

· 确定将用于连接的TLS版本和密码套件。

· 交换将用于通信的对称会话密钥。

如果简化公钥基础设施(PKI)(PKI是整个SSL / TLS生态系统的基础设施),那么实际上就是安全密钥交换。在HTTPS连接期间,实际上就是使用对称会话密钥(通常是256位高级加密标准(AES)密钥)来完成通信,该会话密钥是在客户端生成的。生成对称密钥时,双方都会得到一份副本。他们可以使用它来加密和解密在它们之间传输的数据。

尽管256位加密仍足够强大,但真正的安全性却在门口,那就是更大更强的私钥(通常为2048位RSA密钥)有助于处理连接的身份验证部分。身份验证很重要,因为客户端希望确保它与正确的参与者连接。从本质上讲,这就是SSL / TLS握手的目的。这是一组检查,我们来看看:

·  客户端和服务器相互认证;

· 他们确定HTTPS连接的参数(这将决定使用哪种密码套件);

· 客户端加密会话密钥的副本,并将其发送到服务器以在连接期间使用。

回过头看,SSL / TLS握手会给连接增加了一点时间,这就是HTTPS减慢你网站速度的说法。不过,这种延迟已在TLS协议的最新版本中得到解决。

当前,正在使用两种不同版本的TLS握手:TLS 1.2和TLS 1.3。

TLS 1.2和TLS 1.3中的SSL / TLS握手过程

TLS 1.2使用一次握手,可以在客户端和服务器之间进行多次往返。

想知道TLS握手过程如何工作?我们粗略地讲一下简单的过程,但不会逐一展开:

·  客户端和服务器相互接通。

·  服务器出示其SSL / TLS证书。

·  客户端验证证书颁发机构(CA)签名的证书。

·  他们交换一列受支持的密码套件并达成协议,然后进行密钥交换。

此过程涉及很多步骤-所有这些步骤都在很短的时间内实现。

另一方面,TLS 1.3已将TLS握手改进为单个往返。

显然,这减少了连接启动所花费的时间,我们在这里说的是毫秒,可能并不明显(除非是大规模的),这就使所有的工作效率提高了许多。TLS 1.3还允许恢复0-RTT,从而进一步简化了与启用TLS 1.3的网站的后续连接。

但是,考虑到TLS握手中的活动部件数量,如果网站或设备配置错误,可能会出错。下期我们将说说TLS握手可能会出现的问题以及需要解决的问题。

下期再见哦!期待彩蛋。

注:文章内容为国密应用研究院原创翻译整理

-END-

国密应用研究院介绍

 

集结密码界专家大咖针对政策解读、市场研究、技术应用等各个研究方向作出最有态度的观点输出,行业科普持续日常更新,做一个专业、智慧、有料、全面的商密应用研究传播平台。

编辑|豚BB

图片|豚BB

投稿邮箱|ai6@wotrus.com