首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >从HTTPS理解对称加密和非对称加密

从HTTPS理解对称加密和非对称加密

原创
作者头像
Eulogy
发布2025-07-28 00:43:54
发布2025-07-28 00:43:54
4040
举报
文章被收录于专栏:笔记本笔记本

对称加密和非对称加密

HTTPS在HTTP的基础上加上了ssl协议来进行安全的数据传输的。其中核心其实就是对称加密和非对称加密(混合加密)再加上一个CA(简单地理解CA:CA就是服务端在注册的时候会向一个第三方权威机构申请一个证书,然后客户端向这个服务器发起请求的时候,服务端会把证书给客户端,客户端再去第三方机构去查看这个证书是否合法,合法的话就接着访问,不合法的话就提醒不安全)。再理解对称加密和非对称加密。我们就能清楚地知道了HTTPS是怎么实现安全传输的了。

对称加密

对称加密就是说加密和解密使用的是同一个密钥。通信双方要提前知道这个密钥是什么,然后使用这个密钥进行加密发送给对方,对方使用同样的密钥进行解密。

非对称加密

非对称加密就是说加密和解密使用的是不同的密钥,一个公钥和一个私钥,使用公钥加密,私钥解密。可以用来对称密钥交换(HTTPS),身份验证(SSH)。

HTTPS安全传输

只使用非对称加密,客户端和服务端双方都各自持有私钥然后给对方发送公钥,然后进行传输也是可以进行安全传输的,但是非对称加密的加密加密速度是慢于对称加密的,所以我们使用混合加密进行HTTPS的数据传输,主要步骤是使用非对称加密来进行对称密钥的传输,之后双发都有了对称密钥之后使用对称密钥进行数据的传输。

  1. 客户端发起一个Https请求给服务端。
  2. TCP三次握手建立连接之后,客户端发送一个Client Hello请求(其中包括一个客户端随机数)。
  3. 服务端接收到之后将加密算法、CA证书、公钥、服务端证书发送给客户端。
  4. 客户端受到之后使用服务端的证书去第三方权威机构验证是否合法,合法则继续,不合法则提醒不安全。然后使用公钥加密一个预主密钥发送给服务端。
  5. 服务端收到之后用私钥解密这个预主密钥,此时客户端和服务端都同时拥有预主密钥、客户端随机数、服务端随机数,客户端和服务端就会使用一个统一的标准使用这三个数生成一样的对称密钥,之后就可以进行安全地对称加密通信了。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 对称加密和非对称加密
    • 对称加密
    • 非对称加密
    • HTTPS安全传输
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档