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

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

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

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

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

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

总结:

  1. 安全性:HTTPS先使用非对称加密,确保密钥交换过程安全。
  2. 效率:随后转为对称加密,以提高数据传输速度。
  3. 策略:结合非对称与对称加密,兼顾安全与效率。
  4. 过程:握手阶段交换密钥,后续使用对称加密传输数据。
相关推荐
DemonAvenger1 小时前
高性能 TCP 服务器的 Go 语言实现技巧:从原理到实践
网络协议·架构·go
tmacfrank4 小时前
Android 网络全栈攻略(四)—— TCPIP 协议族与 HTTPS 协议
android·网络·https
2501_916013744 小时前
iOS 多线程导致接口乱序?抓包还原 + 请求调度优化实战
websocket·网络协议·tcp/ip·http·网络安全·https·udp
M1A14 小时前
TCP/IP协议精解:IP协议——互联网世界的邮政编码系统
后端·网络协议·tcp/ip
夏天想5 小时前
优化 WebSocket 实现单例连接用于打印【待测试 】
网络·websocket·网络协议
路长且阻5 小时前
网络协议(TCP/IP、HTTP、HTTPS)
网络协议·tcp/ip·http
杰尼橙子6 小时前
DPDK基础架构解析:EAL环境抽象层的设计与实现
网络协议·性能优化
吴free7 小时前
mac电脑wireshark快速实现http接口抓包
网络·测试工具·http·wireshark
THMOM9110 小时前
TinyWebserver学习(9)-HTTP
网络协议·学习·http
en-route13 小时前
HTTP 缓存
网络协议·http·缓存