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端解密信息 客户端用之前生成的私钥解密服务段传过来的信息,于是获取了解密后的内容。整个过程第三方即使监听到了数据,也束手无策。
总结:其实就是服务端响应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
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 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框架的用法!