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公钥提取出证书中的服务器公钥,然后客户端生成预主秘钥利用服务器公钥加密后发送给服务端,服务端利用服务端私钥解密得到预主秘钥,然后此时就利用这个预主秘钥(也就是会话秘钥)进行后面的数据加密传输。

相关推荐
白帽黑客沐瑶5 小时前
【网络安全就业】信息安全专业的就业前景(非常详细)零基础入门到精通,收藏这篇就够了
网络·安全·web安全·计算机·程序员·编程·网络安全就业
树码小子5 小时前
Java网络编程:(socket API编程:TCP协议的 socket API -- 回显程序的服务器端程序的编写)
java·网络·tcp/ip
绿箭柠檬茶7 小时前
Ubuntu 服务器配置转发网络访问
服务器·网络·ubuntu
FPGA_Linuxer7 小时前
FPGA 40 DAC线缆和光模块带光纤实现40G UDP差异
网络协议·fpga开发·udp
real 17 小时前
传输层协议UDP
网络·网络协议·udp
路由侠内网穿透8 小时前
本地部署 GPS 跟踪系统 Traccar 并实现外部访问
运维·服务器·网络·windows·tcp/ip
喵手11 小时前
玩转Java网络编程:基于Socket的服务器和客户端开发!
java·服务器·网络
徐子元竟然被占了!!13 小时前
实验-基本ACL
网络
ftpeak14 小时前
从零开始使用 axum-server 构建 HTTP/HTTPS 服务
网络·http·https·rust·web·web app
LabVIEW开发14 小时前
LabVIEW气体污染无线监测
网络·labview·labview知识·labview功能·labview程序