什么是 TLS/SSL 握手

TLS/SSL 握手是一个加密过程,每当客户端(如浏览器)与服务器建立连接时,都会在后台进行,此握手协议有助于客户端和服务器之间的安全连接,从而促进隐私、数据完整性和机密性。

TLS/SSL 握手何时发生

每当客户端尝试与服务器建立安全连接时,都会触发 TLS/SSL 握手过程。这包括以下情况:

  • 用户尝试访问使用 HTTPS 的网站。
  • 用户连接到支持 SMTP 的邮件服务器。
  • 用户需要通过 TLS/SSL 建立安全的通信通道。

TLS 握手与 SSL 握手有区别吗

尽管术语SSL仍在广泛使用,但TLS是最新的协议,但是,术语 TLS 和 SSL 可以互换使用,同样,术语 TLS 握手和 SSL 握手可以互换使用。

注意:TLS 1.2 及更高版本目前被认为是安全的,并被广泛使用,以防范 POODLE 攻击和 Heartbleed 漏洞等网络威胁。

TLS 握手过程

在 TLS 握手期间,客户端和服务器之间将发生以下交换:

  • 客户端和服务器通过确定支持的最高 TLS 版本以及握手过程中要使用的加密算法来建立其兼容性。
  • 客户端和服务器验证彼此的完整性和真实性。
  • 它们派生一个会话密钥,用于加密传输中的数据并保护整个会话。

TLS 握手中涉及的步骤

整个 TLS 握手过程涉及客户端和服务器之间来回通信的几个步骤,以下是对 TLS/SSL 握手中涉及的所有步骤的详细分析。

术语描述
TLS 协议客户端支持的 TLS 版本
密码套件客户端首选加密算法的列表。然后,服务器可以选择一个适合客户端和服务器的选项。
客户端随机一堆随机生成的字符,将有助于保护握手过程。
服务器随机服务器生成的一堆随机字节,类似于客户端随机数。
TLS 协议版本服务器为此会话选择的 TLS 版本。
  • 客户问候
    客户端通过发送名为“客户端 Hello”的 hello 消息来启动与服务器的 TLS 握手。默认情况下,此消息将包含有关 TLS 协议、密码套件和客户端随机数的信息。
    还可以包含其他字段,例如会话 ID、压缩方法和支持的扩展,以促进会话恢复、传达客户端对压缩的支持以及增强协议功能。
  • 服务器你好
    作为对客户端 Hello 的响应,服务器将发送一个 Server Hello,其中包括有关 TLS 协议版本、服务器选择的密码套件和 Server Random 的信息
    如果客户端与客户端随机数一起发送,则将包含其他字段,例如会话 ID 和压缩方法。
  • 服务器身份验证
    除了 Server Hello,服务器还向客户端提供其数字证书。客户端将通过使用相应的证书颁发机构验证此证书来验证服务器的身份。
  • 预主密钥生成
    然后,客户端使用安全的随机生成器生成预主密钥。此密钥用于在客户端和服务器之间建立共享密钥,然后使用该密钥派生会话密钥。此会话密钥将用于加密和解密客户端和服务器之间的通信。
    注意:预主密钥对于每个 TLS 会话都是唯一的且完全随机的。因此,即使服务器的私钥将来被泄露,在握手期间交换的加密预主密钥也将保持安全,从而保护过去的会话免受私钥泄露的影响。
  • 密钥交换
    预主密钥使用服务器的公钥(从 TLS 证书获取)进行加密,并发送到服务器。这样做是为了确保只有服务器才能解密此密钥。然后,服务器将使用其私钥解密预主密钥。
  • 会话密钥生成
    客户端和服务器都使用服务器随机数、客户端随机数和预主密钥生成会话密钥。
  • 客户端完成和服务器完成
    客户端和服务器发送一条消息,指示握手过程现已完成。

在这里插入图片描述

TLS/SSL 握手的安全性

虽然握手过程本身是安全的,但 TLS 连接的安全性基于以下优势:

  • 密码套件的优势
  • 证书验证
  • 服务器配置
  • TLS/SSL握手协议的重要性

密码套件的优势

密码套件是一组加密算法,密码套件的强度在保护 TLS 连接方面起着重要作用。因此,使用最新的密码套件(如 TLS_AES_256_GCM_SHA384、TLS_CHACHA20_POLY1305_SHA256 和 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA38)非常重要,这些套件可以防止漏洞。

证书验证

证书验证过程可确保服务器的真实性和完整性。但是,如果由于配置错误或不遵守最佳实践而导致该过程不严格,则可能导致接受过期、吊销或无效的证书,从而危及 TLS 连接的整体安全性。

服务器配置

服务器的配置方式应包含 TLS 最佳实践,例如禁用过时和易受攻击的协议(SSL 等协议)、使用强密码套件以及强制执行加密算法。使用这些最佳实践来保护 TLS 握手过程将有助于建立安全的 TLS 连接。

TLS/SSL握手协议的重要性

TLS 握手协议负责在客户端和服务器之间建立安全的通信通道。它不仅通过强大的加密来保护敏感数据,而且还通过确保传输中数据的真实性和机密性来建立信任。因此,TLS握手协议在确保安全的在线通信方面起着至关重要的作用。

简化TLS/SSL证书管理

证书在 TLS/SSL 握手过程中起着至关重要的作用,请务必使所有证书保持最新状态,Key Manager Plus等证书生命周期管理解决方案可帮助企业发现、监控和管理其环境中的所有TLS/SSL证书,企业还可以轻松地实现证书管理的整个生命周期的自动化。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/184347.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Android笔记(十四):JetPack Compose中附带效应(一)

在Android应用中可以通过定义可组合函数来搭建应用界面。应用界面的更新往往是与可组合函数内部定义的状态值相关联的。当界面的状态值发生变更,会导致应用界面进行更新。在Android笔记(九):Compose组件的状态,对Compo…

数据库实验五 数据库设计

数据库实验五 数据库设计 一、实验目的二、实验内容三、实验内容四、验证性实验五、设计性实验 一、实验目的 1.了解E-R图构成要素以及各要素图元。 2.掌握概念模型E-R图的绘制方法。 3.掌握概念模型向逻辑模型的转换原则和步骤。 4.运用sql编程实现 二、实验内容 1.选取一个…

TCP 重传、滑动窗口、流量控制、拥塞控制的剖析

TCP 是一个可靠传输的协议,那它是如何保证可靠的呢? 为了实现可靠性传输,需要考虑很多事情,例如数据的破坏、丢包、重复以及分片顺序混乱等问题。如不能解决这些问题,也就无从谈起可靠传输。 那么,TCP 是…

使用骨传导耳机会伤耳朵吗?一文读懂骨传导耳机有哪些优点

首先说明,如果是正确的使用骨传导耳机是不会伤耳朵。 一、骨传导耳机的传声原理是什么? 声音的传播需要介质,传统的耳机是通过空气来进行传播,也被称为“空气传导耳机”,而骨传导耳机最大的特别之处就在于&#xff0…

linux安装zsh、oh-my-zsh及常用插件

大家好,我叫徐锦桐,个人博客地址为www.xujintong.com,github地址为https://github.com/xjintong。平时记录一下学习计算机过程中获取的知识,还有日常折腾的经验,欢迎大家访问。 一、安装zsh 这个不用多说了&#xff0…

[HOW TO]-VirtualBox的虚拟机通过宿主机上网

快速链接: . 👉👉👉 [专栏目录]-环境搭建安装问题笔记目录 👈👈👈 付费专栏-付费课程 【购买须知】:👉👉👉 个人博客笔记导读目录(全部) 👈👈&a…

uni-app,nvue中text标签文本超出宽度不换行问题解决

复现:思路: 将text标签换为rich-text,并给rich-text增加换行的样式class类名解决:

nf_conntrack内核模块常见问题

nf_conntrack内核模块常见问题 问题描述排查步骤前置条件:启用nf_conntrack内核模块检查nf_conntrack配置 解决办法1:半数减少nf_conntrack buckets的值解决办法2:加倍调大m.min_free_kbytes值解决办法3:Linux社区权威答复-忽略告警 问题描述 内核报错 falling bac…

【C++初阶】四、类和对象(构造函数、析构函数、拷贝构造函数、赋值运算符重载函数)

相关代码gitee自取: C语言学习日记: 加油努力 (gitee.com) 接上期: 【C初阶】三、类和对象 (面向过程、class类、类的访问限定符和封装、类的实例化、类对象模型、this指针) -CSDN博客 引入:类的六个默认成员函数…

Web(6)Metasploit缓冲区溢出漏洞

利用ms17_010漏洞建立会话: 原理: 因为window低级版本中存在漏洞,端口445.SMB是一个协议名,全称是Server Message Block(服务器消息快协议),用于计算机之间共享文件,打印机&#x…

智驾芯片全矩阵「曝光」,这家企业的车载品牌正式官宣

随着汽车智能化加速,智能驾驶芯片格局逐渐清晰。 针对L0-L2,业内基本采用智能前视一体机方案;要实现高速NOA、城市NOA等更为高阶的智驾功能等,则基本采用域控制器方案。从前视一体机至域控,再逐步演进到舱驾一体、中央…

eclipse项目移到idea上部署运行

1.配置web模块 另外,模块这里,也要加上Spring 2.配置Artifact (用于tomcat) 就是从上面配置的web模块,产生的工件 3.添加lib 一般是在web-inf/lib , 遇到的坑: jdk版本问题,这里…

加速软件开发:自动化测试在持续集成中的重要作用!

持续集成的自动化测试 如今互联网软件的开发、测试和发布,已经形成了一套非常标准的流程,最重要的组成部分就是持续集成(Continuous integration,简称CI,目前主要的持续集成系统是Jenkins)。 那么什么是持…

6.显示评论 + 添加评论

1.显示评论 数据层:根据实体查询一页评论数据、根据实体查询评论的数量业务层:处理查询评论的业务、处理查询评论数量的业务表现层:显示帖子详情数据时,同时显示该帖子所有的评论数据 1.1 数据访问层 entity_type:实体…

linux 内存回收mglru算法代码注释2

mglru与原lru算法的兼容 旧的lru算法有active与inactive两代lru,可参考linux 内存回收代码注释(未实现多代lru版本)-CSDN博客 新的算法在引入4代lru的同时,还引入了tier的概念。 新旧算法的切换的实现在lru_gen_change_state&a…

机器学习探索计划——数据集划分

文章目录 导包手写数据划分函数使用sklearn内置的划分数据函数stratifyy理解举例 导包 import numpy as np from matplotlib import pyplot as plt from sklearn.datasets import make_blobs手写数据划分函数 x, y make_blobs(n_samples 300,n_features 2,centers 3,clus…

【UE5】资源(Asset)

了解UE游戏的基本构成 资源(Asset): 在UE中,资源(Asset)是指游戏中使用到的各种素材,例如模型、纹理、材质、声音、动画、蓝图、数据表格、关卡等(通常以uasset结尾),他…

freeswitch设置多个execute_on_media

概述 freeswitch是一款简单好用的VOIP开源软交换平台。 fs中有非常多的接口和通道变量,使用方式多变。 官方文档有时候也仅仅是介绍了最基本的使用方法和格式。 环境 centos:CentOS release 7.0 (Final)或以上版本 freeswitch:v1.6 G…

办公技巧:Word中插入图片、形状、文本框排版技巧

目录 一、插入图片排版技巧 二、添加形状排版技巧 三、插入“文本框”排版技巧 我们平常在制作word时候经常会遇到插入选项卡下的图片、形状和文本框这三种情况下,那么如何使得Word文档当中添加这三个元素的同时,又能保证样式美观呢,今天小…

Leetcode200. 岛屿数量

Every day a Leetcode 题目来源:200. 岛屿数量 解法1:深度优先搜索 设目前指针指向一个岛屿中的某一点 (i, j),寻找包括此点的岛屿边界。 从 (i, j) 向此点的上下左右 (i1,j),(i-1,j),(i,j1),(i,j-1) …
最新文章