美文网首页
关于https的一些了解

关于https的一些了解

作者: HopCoder | 来源:发表于2018-04-14 23:44 被阅读0次

https是安全版的http协议(超文本传输安全协议),它是http和ssl协议的综合版,可以有效的防止信息在网络传输过程中遭到窃取和篡改的可能性。

传统的http协议有哪些缺点呢?

  1. 通信使用明文传输,内容可能被窃取
    明文信息很容易使用抓包软件抓取
    如何防止?加密处理防止窃听
    . 对通信的内容进行加密(这也有被窜改的风险)。
    . 对通信加密,不同于上面的内容的加密。https是SSL(安全套接层)或TLS(安全传输层协议)和HTTP协议组合使用,它可以使用SSL建立一个安全的通信线路,在进行http请求。

  2. 不能验证通信方的身份,因此可能遭到伪装
    . 无法确定请求发送给目标服务器是否是按照正确的意图进行返回,可能存在伪装的服务器
    . 无法确定响应的服务器发送给的客户端,是否是真正要接受响应的按个客户端。有可能是伪装的客户端
    . 无法判定请求来自何方,出自谁手
    . 无法确定正在通信的对方是否具备访问权限。可能某些服务器可能只想让特定的用户访问到。
    . 即使无意义的请求也会照单全收。Dos攻击
    如何防止? 查明对方的证书
    SSL技术不仅使用加密处理,还有证书手段来确定通信方。证书有第三方权威机构办法,用来证明服务器和客户端的真实性。只需要在通信前确认对方证书的可靠性,就能保证要通信的对方是自己要想的。

  3. 无法证明报文的完整性, 所有有可能被篡改
    . 接受到的信息无法确定是和发送方发送的信息相同的,攻击者可以通过中间人攻击窃取请求或者响应消息进行修改。
    如何防止?
    . 采用MD5和SHA-1等散列值校验方法对信息进行数字签名。经常看到的文件下载网站如

    image.png
    这种依然需要使用用户本身确认下载结果的可靠性,无法通过浏览器来进行验证。 而且如果数字签名也被修改,用户是无法知道的。

HTTP + 加密 + 认证 + 完整性保护 = HTTPS

加密
  1. 对称加密(也叫共享密钥加密)顾名思义通信双方使用同一个密钥的方式。这种方式有个弊端就是必须将密钥发送给对方。这里会有安全风险,密钥落入攻击者手里安全传输就失去来意义。
  2. 非对称加密就是使用公开密钥加密,它有效的解决了对称加密必须使用传输密钥给地方的弊端。因为有两把密钥(公开密钥:所有人都知道的密钥和私有密钥:只有自己知道的密钥)。发送方想接受方发送消息前,先使用接受方的公开密钥加密,然后发送给接受方, 接受方接受到消息后,使用自己的私有密钥进行解析。同时返回响应消息时,接受方使用发送方的公开密钥加密响应消息,发送方接受到响应消息使用自己的私有密钥解密,得到响应消息。这样就进行了一次安全传输。
  3. https的混合加密机制
    首先使用公开密钥加密(非对称加密)的方式安全的得到共享密钥加密(对称加密)中要使用的密钥,在确保交换的密钥是安全的前提下,使用共享密钥加密的方式进行传输通信。
认证

使用公开加密(非对称加密)也会存在一些问题,无法确认它确实是货真价实的公开密钥。

相关文章

  • 关于https的一些了解

    https是安全版的http协议(超文本传输安全协议),它是http和ssl协议的综合版,可以有效的防止信息在网络...

  • 了解一些关于HTTP与HTTPS协议的知识

    HTTP(超文本传输协议),HTTP就是通过TCP/IP协议建立连接,实现服务器和客户端之间的通信。TCP/IP协...

  • 了解https

    HTTPS https时代来了 知乎 解决问题 (保密、真实、有效) 通信内容的保密性 : 加密算法对内容加密 ...

  • Charles 抓包 https

    要了解 Charles 抓包原理 就需要先了解下 https的加密原理.关于 https 的加密原理 有一篇文章,...

  • 了解HTTP/HTTPS

    一、 了解HTTP/HTTPS 1、 HTTP构建于TCP/IP协议之上,默认端口号是80 2、 HTTP主要特点...

  • https 初步了解

    1. https 简单介绍 概述 HTTP协议属于明文传输协议,交互过程以及数据传输都没有进行过加密,通信双方也没...

  • 了解HTTPS原理

    一丶前言 1.HTTP 协议(HyperText Transfer Protocol,超文本传输协议):是客户端浏...

  • 快速了解Https

    HTTPS简介 HTTPS:https是http与ssl的结合,为了解决http明文传输导致信息泄露的问题。ssl...

  • 了解下https

      https是http + ssl/tls的组合,主要是为了解决http明文传输不安全的问题(其实就是给内容加密...

  • 关于microPython的一些了解

    MicroPython是用C99编写的,整个MicroPython核心可以在非常自由的MIT许可下 使用。大多数图...

网友评论

      本文标题:关于https的一些了解

      本文链接:https://www.haomeiwen.com/subject/nsyrkftx.html