ssl/tls加密算法讲解

ssl算法和tls算法的关系

在我的理解中ssl算法属于是tls算法的父亲,但是由于tls算法比ssl算法优秀很多,所以说现在基本上都使用tls算法,而tls算法的使用情景和我们的日常生活息息相关,比如http协议和https协议,这两个协议的根本区别是http协议采用明文传输,而https协议采用了tls加密算法,采用公钥,私钥,会话秘钥进行加密(公钥/私钥对用于非对称加密,主要用于密钥交换;会话密钥用于对称加密,用于实际的数据传输。),还有vpn协议,也是采用了tls加密。

加密算法产生的背景

在http协议中,我们的报文都是明文传输,这样就会导致黑客很容易就得到报文数据,并且可能对报文数据进行篡改,使得我们的聊天非常不安全

而有了https协议以后,就会在应用层对数据进行加密,使得黑客就算得到数据以后还是没办法看懂报文是什么,但是如果只是单纯的加密的话,可能黑客还会将数据进行篡改,使得数据失效

TLS算法讲解

首先是TCP的三次握手,然后,客户端向服务器发送支持的tls版本的加密算法,当服务端得到对应的报文以后,返回所要的tls版本和加密算法,然后再将自己的ca证书发送给客户端,然后客户端判断ca证书的真实性(验证证书的指纹和签名),然后系统中的ca公钥提取出证书中的服务器公钥,然后客户端生成预主秘钥利用服务器公钥加密后发送给服务端,服务端利用服务端私钥解密得到预主秘钥,然后此时就利用这个预主秘钥(也就是会话秘钥)进行后面的数据加密传输。

相关推荐
minji...21 分钟前
Linux 进程间通信(三)命名管道
linux·服务器·网络
kongba0072 小时前
OpenClaw v2026.3.23 安全配置复盘:从多处明文到集中受控存储《OpenClaw 安全部署 SOP(v2026.3.23)V2》
服务器·网络·安全
三三有猫2 小时前
HTTP、HTTPS和SOCKS代理怎么选?
网络协议·http·https
郭涤生3 小时前
CANopen 基础复习
服务器·网络·c++
normanhere3 小时前
H3C无线调优案例
网络
饿了吃洗衣凝珠3 小时前
hcip 作业
网络
C++ 老炮儿的技术栈3 小时前
两个线程对socket 进行读和写,需要加锁吗
java·服务器·网络
陌上花开缓缓归以4 小时前
linux boot 烧写纪要以及内存相关分析
linux·服务器·网络
yy_xzz4 小时前
【Linux开发】 04 Linux UDP 网络编程
linux·网络·udp
123过去5 小时前
mdb-sql使用教程
linux·网络·数据库·sql