HTTPS加密原理简介

 

HTTPS其实是有两部分组成:HTTP + SSL / TLS,也就是在HTTP上又加了一层处理加密信息的模块。服务端和客户端的信息传输都会通过TLS进行加密,所以传输的数据都是加密后的数据。
HTTP over SSL/TLS

 

复制代码
SSL协商过程
1. clinet端发起HTTPS请求
2. server端的配置
    采用HTTPS协议的服务器必须要有一套数字证书(证书是否自制区别在于是否会弹出提示页面)
    这套证书其实就是一对公钥和私钥。
3. server端响应,传送证书(公钥)
4. clinet端解析证书
    clinet端的TLS进行解析证书,验证公钥是否有效;
    若证书有效,则生成一个随机值;然后用公钥对该随机值进行加密。
5. clinet端传送加密信息
6. server端解密信息
    server端使用私钥解密,获取到clinet端产生的随机值,至此两端都有该随机值
7. 传输加密后的信息
8. clinet端解密信息
    客户端用之前生成的私钥解密服务段传过来的信息,于是获取了解密后的内容。整个过程第三方即使监听到了数据,也束手无策。
SSL协商过程
复制代码

 

总结:其实就是服务端响应https请求,传回公钥;client检查公钥,若正常,则生成一个随机值;
同时将该随机值通过公钥加密,传递到server端;server端使用私钥解密,获取了该随机值。
至此,client端和server端都有该随机值。
之后https传递的内容都使用该随机值进行加密解密。
为何安全?
因为client端产生的随机值在网络上传输时,是被加密的,只有server端拥有私钥才能解密并获取该随机值;即使被第三方抓包,但因为没有私钥,也无法获取随机值,无法进行解密

参考:https://kb.cnblogs.com/page/155287/
SSL协议原理详解 https://blog.csdn.net/qq_38265137/article/details/90112705

posted @   雲淡風輕333  阅读(180)  评论(0编辑  收藏  举报
(评论功能已被禁用)
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示