美文网首页
http和https的区别

http和https的区别

作者: 然而到了平面上 | 来源:发表于2019-06-11 08:58 被阅读0次

    原文 https://blog.csdn.net/gd_mkhu/article/details/91411001

    http和https的区别

    HTTP协议是被用于web浏览器和网站服务器之间传递消息的协议,以明文的方式发送方式,socket直接采用get直接获取的信息。可以从WWW服务器传输超文本到本地浏览器。
    而HTTPS在基础上加了一个S,即安全传输,加入了SSL协议。所以即有两个作用,建立一个信息安全通道,加密信息,另一个就是确认网站的真实性。

    区别

    HTTPS和HTTP的区别主要如下:

    • https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。
    • http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。
    • http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
    • http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。
      所以在使用的时候,所以相应的效率有所下降,并且CA证书也需要费用,而SSL证书需要绑定IP地址。
      而将http改为https,则将所有的http改为https。

    SSL协议

    SSL介于应用层和TCP层之间。应用层数据不再直接传递给传输层,而是传递给SSL层,SSL层对从应用层收到的数据进行加密,并增加自己的SSL头。
    用加密算法

    • RSA加密算法:非对称的算法,两个大整数分解为两个素数的问题。
      加密,公钥 (n,e)

    m^e ≡ c (mod n)
    解密,私钥(n,d):
    c^d ≡ m (mod n)
    证明带入就行啦
    n=pq 为两个大质数φ(n)=(p-1)(q-1)ed≡1 (mod φ(n))所以公开的就只有(n,e),所以泄露d,被称为私钥泄露,而已知(n,e)的条件下,如果n被分解,则d就可以算出。但是n是难于被分解的,这是大整数的分解问题。

    • hash算法:检查有没有被篡改
    • 数字证书:使用数字证书来证明自己的身份,而不是伪造的。
      在SSL中会使用密钥交换算法交换密钥;使用密钥对数据进行加密;使用散列算法对数据的完整性进行验证,使用数字证书证明自己的身份。

    相关文章

      网友评论

          本文标题:http和https的区别

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