接下来的三篇内容我们来讨论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握手可能会出现的问题以及需要解决的问题。

下期继续哦!

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

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

    上篇内容我们首先介绍什么是SSL / TLS握手的概念和简单的流程概述,为的就是让有的童鞋们能够更好地理解.那么接下来呢我们将介绍SSL/ TLS握手失败和错误(SSL握手错误)的所有可能原因以及谁可 ...

  2. 【网络编程开发系列】好端端的MQTT-broker重新部署后居然出现TLS握手失败了

    摘要:本文通过一次真实的现网案例复盘,深度还原TLS握手问题的排查思路和方法,希望对广大读者有所启发和帮助. 文章目录 1 写在前面 2 问题描述 2.1 项目背景 2.2 现场问题 3 场景复现 3 ...

  3. 使用wireshark观察SSL/TLS握手过程--双向认证/单向认证

    SSL/TLS握手过程可以分成两种类型: 1)SSL/TLS 双向认证,就是双方都会互相认证,也就是两者之间将会交换证书. 2)SSL/TLS 单向认证,客户端会认证服务器端身份,而服务器端不会去对客 ...

  4. 例说图解TCP/IP协议族--TLS篇(1)抓包分析SSL/TLS握手

    SSL是Secure Sockets Layer (安全套接层)的简写,SSL协议是为网络通信提供安全的一种安全协议,继任者为TLS,即 Transport Layer Security传输层安全. ...

  5. 如何解决SSL/TLS握手过程中失败的错误?

    Fixes for the SSL/TLS Handshake Failed error for both internet users and site owners It's time for a ...

  6. SSL/TLS握手过程

    1.握手与密钥协商过程 基于RSA握手和密钥交换的客户端验证服务器为示例详解TLS/SSL握手过程 再看一张手绘时序图 (1).client_hello     客户端发起请求,以明文传输请求信息,包 ...

  7. https自签证书tls握手时错误或go系统错误处理

    https自签证书tls握手时报错:2021/11/03 09:22:53 http: TLS handshake error from ip:port: remote error: tls: unk ...

  8. windows 修复SSL/TLS协议信息泄露漏洞

    打开服务器,运行gpedit.msc,打开"本地组策略编辑器",定位到计算机配置-管理模板-网络-SSL配置设置 打开"SSL密码套件顺序",更改为已启用,并在 ...

  9. php sslv3握手失败,Boost Beast握手:sslv3警报握手失败错误

    我正在使用Boost Beast连接到一个Web Socket服务器,但是我一直收到一个错误 Resolving push-private.kucoin.com:443... Performing S ...

最新文章

  1. app.listen(3000)与app是不一样的
  2. Storm中的LocalState 代码解析
  3. Spring-- ApplicationContext
  4. 普通计算机网络和工业控制网络的区别,浅谈工控电脑和普通电脑的区别
  5. mysql主要的收获_MySQL性能测试大总结
  6. python入门教材论坛_Python初学者(零基础学习Python、Python入门)书籍、视频、资料、社区推荐...
  7. 黑马博客——详细步骤(五)项目功能的实现之用户信息修改
  8. ++与*优先级相同,按照从右至左的顺序计算
  9. java enum private_初步理解Java枚举类型
  10. Metasploit——渗透攻击模块(Exploit)
  11. 软件需求包括3个不同的层次――业务需求、用户需求和功能需求
  12. 生成自己的app key文件
  13. 闭关备战python面试50天,“啃完”这份python面试宝典,我终于四面拿下阿里offer
  14. Elliptic Curve
  15. 学一点SQL注入基础
  16. 阵列c语言,C语言结构体阵列的定义
  17. 编写个人博客网站的一次经历
  18. win10 mysql 1030_Win10系统打开按键精灵提示#1030:启动脚本执行(图)
  19. 武林外传—武三通的zuul之惑
  20. IntelliJ IDEA快速入门 | 第三十三篇:在IntelliJ IDEA中如何进行断点调试呢?

热门文章

  1. 【北京.5月28日】第六届 Mobile Dev Day – WP7优秀应用经验分享日
  2. 什么是Gamma 曲线
  3. Universal Serial Bus (USB)
  4. TypeScripe中那些奇奇怪怪的符号?!??
  5. Android ROM 打包记录
  6. 树莓派PCA9685的舵机MG996R二度自由云台操控代码,搭配mqtt进行远程操控
  7. IE被www 537 com www COXDX INFO劫持,修复
  8. 练习:Python 的字符串处理, 一个朴实无华的四则运算计算器,批量计算小学生四则运算表达式
  9. Linux下提示命令找不到:bash:command not found
  10. 男生vs女生,谁更加适合做软件测试?