为什么https先非对称加密,然后对称加密?

HTTPS之所以先使用非对称加密,然后在对称加密,主要是基于两者在加密效率与安全性方面的特性考虑。

首先,非对称加密具有极高的安全性,因为它使用了公钥和私钥这一对密钥。公钥是公开的,任何人都可以使用它来加密数据,但只有持有私钥的一方才能解密。这种特性使得非对称加密在密钥交换和数据完整性校验方面非常有效。然而,非对称加密的缺点是加密和解密过程相对较慢,且消耗的计算资源较多。

相比之下,对称加密的加密和解密速度非常快,且消耗的计算资源较少。但是,对称加密的密钥交换是一个问题,因为密钥需要通过不安全的网络传输,这可能导致密钥被截获。

因此,HTTPS结合了非对称加密和对称加密的优点,采用了一种混合加密方式。在HTTPS的握手阶段,客户端和服务器使用非对称加密来交换对称加密的密钥(也称为会话密钥)。具体来说,服务器会将自己的公钥发送给客户端,客户端使用这个公钥来加密一个随机生成的会话密钥,并将加密后的会话密钥发送给服务器。服务器使用自己的私钥来解密这个会话密钥,从而双方共享了一个对称加密的密钥。

一旦会话密钥被成功交换,客户端和服务器就可以使用对称加密来加密和解密后续的数据传输。这种方式既保证了数据传输的安全性(因为使用了非对称加密来交换密钥),又提高了加密和解密的速度(因为使用了对称加密来加密数据)。

总结:

  1. 安全性:HTTPS先使用非对称加密,确保密钥交换过程安全。
  2. 效率:随后转为对称加密,以提高数据传输速度。
  3. 策略:结合非对称与对称加密,兼顾安全与效率。
  4. 过程:握手阶段交换密钥,后续使用对称加密传输数据。
相关推荐
醇氧6 小时前
【学习】IP地址:数字世界的“门牌号”怎么读?
网络协议·学习·tcp/ip
Hello_Embed7 小时前
嵌入式上位机开发入门(三):TCP 编程 —— Server 端实现
笔记·单片机·网络协议·tcp/ip·嵌入式
zt1985q9 小时前
本地部署开源元搜索引擎 SearXNG 并实现外部访问
服务器·网络协议·开源
摇滚侠9 小时前
系统工作台待办实时提醒,取代五分钟刷新一次,判断有没有新的待办,利用 WebSocket 实现
网络·websocket·网络协议
半壶清水10 小时前
[软考网规考点笔记]-局域网之以太网标准
网络·笔记·网络协议·考试
初九之潜龙勿用12 小时前
C# 解决“因为算法不同,客户端和服务器无法通信”的问题
服务器·开发语言·网络协议·网络安全·c#
zt1985q15 小时前
本地部署 Home Assistant 高级自动化 AppDaemon 并实现外部访问
运维·服务器·网络·网络协议·自动化
野犬寒鸦17 小时前
计网复习Day01
服务器·后端·网络协议·面试
浅念-17 小时前
Linux 进程与操作系统
linux·运维·服务器·网络·数据结构·笔记·网络协议
大地的一角17 小时前
(计算机网络)传输层协议原理
网络协议·计算机网络·udp