【计算机网络】HTTPS

一、HTTPS如何实现加密传输的?

  1. 加密通信(防止窃听) 对称加密:传输实际数据(AES),速度快,适合大量数据。

    非对称加密:握手阶段(RSA)交换对称密钥,保证密钥传输的安全。

  2. 身份验证(防止冒充、防止中间人攻击) 数字证书:服务器通过 ​CA(证书颁发机构)​​ 签发的数字证书证明其身份。
    • 证书:
      • 服务器域名、公钥、有效信息
      • CA 的数字签名(用 CA 私钥生成,客户端用 CA 公钥验证)。
  3. 数据完整性(防篡改) 消息认证码(MAC)​​:TLS 协议通过哈希算法(如 SHA-256)生成消息摘要,确保数据在传输过程中未被篡改。
  4. 握手过程
    1. ClientHello:客户端发送支持的加密套件(如 ECDHE-RSA-AES256-GCM-SHA384)和随机数。
    2. ServerHello:服务器选择加密套件,返回随机数和数字证书。
    3. 密钥交换:
      • 服务器发送公钥(证书中的公钥)。
      • 客户端验证证书后,生成预主密钥(Pre-Master Secret),用服务器公钥加密后发送。
      • 双方通过 ECDHE 等算法生成相同的会话密钥(对称密钥)。
    4. 加密通信:后续数据均用会话密钥加密传输。

二、HTTPS绝对安全吗?

  1. HTTPS 不是绝对安全:它防止的是传输过程中的窃听和篡改,但无法防止: 用户主动泄露密码(如钓鱼网站)。

    服务器本身被入侵(如数据库泄露)。

相关推荐
头疼的程序员8 小时前
计算机网络:自顶向下方法(第七版)第八章 学习分享(三)
网络·学习·计算机网络
ayt0079 小时前
Netty AbstractNioChannel源码深度剖析:NIO Channel的抽象实现
java·数据库·网络协议·安全·nio
北京耐用通信9 小时前
无缝衔接·高效传输——耐达讯自动化CC-Link IE转Modbus TCP核心解决方案
网络·人工智能·物联网·网络协议·自动化·信息与通信
[ ]89811 小时前
Stack_MLAG_知识点梳理
网络·笔记·网络协议
江畔何人初11 小时前
TCP的三次握手与四次挥手
linux·服务器·网络·网络协议·tcp/ip
m0_7381207211 小时前
网络安全编程——Python编写基于UDP的主机发现工具(解码IP header)
python·网络协议·tcp/ip·安全·web安全·udp
洒家肉山大魔王11 小时前
PKI/CA X.509证书的基础应用与解读
服务器·https·密码学·数字证书
北京耐用通信11 小时前
不换设备、不重写程序:耐达讯自动化网关如何实现CC-Link IE转Modbus TCP的高效互通?
人工智能·科技·物联网·网络协议·自动化·信息与通信
liweiweili12611 小时前
http数据传输过程数据编码解码问答
网络协议·http·状态模式
有代理ip12 小时前
动态IP的安全性优化:策略升级与隐私保护实战指南
网络·网络协议·tcp/ip