http与https----https详解

HTTP协议简单快速但不安全,信息明文传输易被截取。HTTPS通过SSL/TLS协议提供加密传输和服务器身份验证,保证了数据的安全性,但增加了传输的复杂性和效率损耗。HTTPS的握手过程包括公钥交换和对话密钥生成,防止中间人攻击。使用证书确保服务器真实性,公钥私钥加解密确保数据安全。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

HTTP:明文传输的不安全

HTTPS:基于HTTP+SSL/TLS来实现的,发送的数据需要加密,接收到的数据需要解密,比HTTP安全,但是传输效率(加解密)比HTTP低

http协议的特点?

  • 支持服务器/客户端模式
  • 简单快速:客户端向服务器发送请求时,只需要传输请求方法和路径;
  • 灵活HTTP允许传输任意类型的数据对象;
  • 无连接:无连接的含义是 每次连接只能处理一个请求。服务器处理完客户端的请求,并受到客户端的响应之后,就断开连接。
  • 无状态:无状态指协议本身对事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,那他必须重传,这会导致每次连接传输的数据增大,但是如果服务器不需要先前的信息时,它的应答就很快。

http和https的区别?

  • HTTP是以http://开头的;而HTTPS是以https://开头的;
  • HTTP是不安全的,信息是明文传输的;HTTPS是安全的,具有安全性的SSL密传输;
  • HTTP标准端口是80HTTPS标准端口是443
  • HTTP无需加密,无需证书;HTTPS对传输的数据需要进行加密,也需要认证证书,会消耗更多的CPU资源;
  • HTTPS的传输效率比HTTP低

HTTPS的传输流程:

前置知识:

为什么需要HTTPS?

如果是使用http协议,因为http是明文传输,可能中途会被钓鱼网站拦截(dns劫持),内部会拿到明文数据,伪装成与服务端类似的响应内容

需要解决的问题?

  1. 如何保证服务器是真实的,而不是钓鱼网站
  2. 解决网络数据传输,使用明文,所有路途中的设备都可以被获取,如果被获取到,存在信息泄露

如何解决?

     使用证书来保证安全

浏览器安装之后,已经初始化了权威的证书颁发机构---证书有什么用?

  1. 权威的证书颁发机构的证书 --》保证服务器真实
  2. https服务器的证书 --》解决明文传输数据问题

  • 使用公钥私钥(非对称加密)来进行加解密

  • 密钥:客户端、服务端用来加解密的, 使用密钥加解密真正的数据               使用密钥进行对称加密(效率比非对称加密高:使用同一个钥匙来加解密

具体的流程:

SSL/TLS协议的基本过程:

  1. 客户端向服务端索要并验证公钥
  2. 双方协商生成“对话密钥”                                                                                      【1、2步:https握手阶段(根据公钥私钥生成对话密钥),需要保证对话密钥不被钓鱼】
  3. 双方采用“对话密钥”进行加密通信

https握手阶段

  1. 第一步,客户端给出协议版本号、一个客户端生成的随机数,以及客户端支持的加密方法。
  2. 第二步,服务端确认双方使用的加密方法,并给出数字证书、以及一个服务器生成的随机数(Server random)                                                                                      【1、2步需要保证对话密钥不被钓鱼】
  3. 第三步,客户端确认数字证书有效,然后生成一个新的随机数(公钥加密),并使用数字证书中的公钥,加密这个随机数,发给服务端。
  4. 第四步,服务端使用自己的私钥,获取客户端发来的随机数(私钥解密)                【3、4步为非对称加密】
  5. 第五步,客户端和服务端根据约定的加密方法,使用前面的三个随机数,生成"对话密钥",用来加密接下来的整个对话过程。

发送数据阶段:客户端使用对话密钥加密真正的数据,服务端使用对话密钥解密数据(此时被钓鱼没有关系)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值