如何快速了解Https

技术如何快速了解Https如何快速了解Https,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。HTTPS简介HTTPS:https是http

如何快速理解Https,很多新手都不是很清楚。为了帮助大家解决这个问题,下面小编就给大家详细讲解一下。需要的人可以从中学习,希望你能有所收获。

HTTPS简介

https: https是http和ssl的结合,为了解决http明文传输带来的信息泄露问题。客户端和服务器之间通信的加密由ssl公钥和私钥保证,中间人攻击的可能性由数字授权证书消除。默认端口是443。

从ca申请证书需要SSL。一般免费证书很少,需要一定的费用。(笔者一直在用阿里巴巴云,还有一个免费的ssl应用,挺适合个人使用的。据说其他云商家也有免费ssl)

有关HTTP发展历史和HTTP2的详细说明,可以点击查看本文。

有关HTTP连接中TCP握手和wave过程的详细说明,可以点击查看本文。

HTTPS工作流程

如何快速了解Https

向客户端服务器发送请求https://baidu.com,然后连接到服务器的端口443。

服务器必须有一组数字证书,这些证书可以自己制作,也可以应用于组织。不同的是自己颁发的证书需要经过客户端验证后才能继续访问,而可信公司申请的证书不会弹出提示页面。这组证书实际上是一对公钥和私钥。

转让证书。这个证书其实就是公钥,但是里面包含了很多信息,比如证书的颁发机构、过期时间、服务器的公钥、第三方证书颁发机构(CA)的签名、服务器的域名信息等等。

客户端解析证书。这部分工作由客户的TLS完成。首先,它将验证公钥是否有效,如颁发机构、过期时间等。如果发现异常,会弹出警告框,表示证书有问题。如果证书没有问题,则会生成一个随机值(密钥)。随机值然后用证书加密。

传输加密信息。这部分传输用证书加密的密钥。目的是让服务器得到这个密钥,然后客户端和服务器之间的通信就可以用这个随机值进行加密和解密。

服务段加密信息。服务器用私钥解密密钥,从客户端获取私钥,然后用这个值对称加密内容。

加密的信息被传输。这部分信息由服务器用私钥加密,可以在客户端恢复。

客户端解密信息。客户端使用之前生成的私钥解密从服务器发送的信息,从而获得解密的内容。

00-1010

相关名词解释

在对称加密算法中,用于加密的密钥与用于解密的密钥相同。因此,为了保证对称加密算法的安全性,密钥应该保密,只能被用户知道,不能公开。在对称加密算法中,加密和解密都使用相同的密钥,公钥和私钥没有区别。

在加密或解密期间,密钥(通常是字符串或数字)被传递给加密/解密算法。

对称加密算法(symmetric key algorithms)

在非对称加密算法中,用于加密的密钥和用于解密的密钥是不同的。

注意:用私钥加密的密文只要是公钥就可以解密,但用公钥加密的密文只能用私钥解密。只有一个人有私钥,而公钥可以发给所有人。

00-1010中间人攻击是指黑客拦截并篡改网络中的通信数据。它分为被动的MITM和主动的MITM。被动的MITM只能窃取通信数据而不做修改,而主动的MITM不仅能窃取数据,还能篡改通信数据。最常见的中间人攻击通常发生在公共wifi或公共路线上。

图为客户端主动发送消息时:如何快速了解Https

00-1010为了防止中间人攻击,整个传输过程中迫切需要解决的问题是保证客户端收到的公钥由服务器发送。因此,提出了数字证书。数字证书由权威的CA组织颁发给服务器,CA组织通过服务器提供的相关信息生成证书。证书的内容包括持有人的相关信息、公钥、签名人的签名信息等。最重要的是,公钥在数字证书中。数字证书如何确保公钥来自请求服务器?数字证书上持有人的相关信息,通过这些信息可以确定不是。

一个中间人;但是证书也是可以伪造的,如何保证证书为真呢?一个证书中含有三个部分:"证书内容(F1), 加密算法(A),加密密文(F3') ",三者的关系如下图,证书内容F1F会被散列算法SHA1计算出hash值F2,然后使用CA机构提供的私钥进行RSA加密

如何快速了解Https

当客户端发起请求的时候,服务器将该数字证书发送给客户端,客户端将其中的加密密文(F3)通过CA机构提供的公钥及逆行解密后得到F2,同时将证书内容(F1)使用SHA1散列成F2,如果两者相等则说明证书没问题。

如何快速了解Https

由于劫持者不知道当初加密使用的私钥是什么,所以永远无法伪造出一个正确的证书可以通过上述的验证。

如何快速了解Https

HTTP的使用成本

安全性考虑:
HTTPS协议的加密范围也比较有限,在黑客攻击、拒绝服务攻击、服务器劫持等方面几乎起不到什么作用。
SSL证书的信用链体系并不安全,特别是在某些国家可以控制CA根证书的情况下,中间人攻击一样可行。

成本考虑:

  1. SSL证书需要购买申请,功能越强大的证书费用越高

  2. SSL证书通常需要绑定IP,不能在同一IP上绑定多个域名,IPv4资源不可能支撑这个消耗(SSL有扩展可以部分解决这个问题,但是比较麻烦,而且要求浏览器、操作系统支持,Windows XP就不支持这个扩展,考虑到XP的装机量,这个特性几乎没用)。

  3. 根据ACM CoNEXT数据显示,使用HTTPS协议会使页面的加载时间延长近50%,增加10%到20%的耗电。

  4. HTTPS连接缓存不如HTTP高效,流量成本高。

  5. HTTPS连接服务器端资源占用高很多,支持访客多的网站需要投入更大的成本。

  6. HTTPS协议握手阶段比较费时,对网站的响应速度有影响,影响用户体验。比较好的方式是采用分而治之,类似12306网站的主页使用HTTP协议,有关于用户信息等方面使用HTTPS。

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/86586.html

(0)

相关推荐

  • competed,第29届奥运会英语作文

    技术competed,第29届奥运会英语作文A Successful OlympicsAs is known to us,the 29th Olympics was held in Beijing,China in 20

    生活 2021年10月26日
  • es6.4.2api

    技术es6.4.2api es6.4.2api这是讲数据库的数据导入到es里 所有用到了mysql!
    1.依赖xml version="1.0" encoding="UTF-8"
    project xml

    礼包 2021年12月15日
  • 网上学历认证,网上怎样打印学历认证证书

    技术网上学历认证,网上怎样打印学历认证证书学历认证报告打印流程1、登陆学信网“中国高等教育学生信息网站(学信网),点击“学历查询”网上学历认证。2、出现“零散查询”页面,点击“零散查询”。3、在页面里输入毕业证证书编号,

    生活 2021年10月21日
  • 什么是c语言共用体

    技术什么是c语言共用体本篇内容介绍了“什么是c语言共用体”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1、共用体是一种特

    攻略 2021年10月28日
  • 如何mysql 数据库1024问题

    技术如何mysql 数据库1024问题如何mysql 数据库1024问题,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。max_allowed

    攻略 2021年10月25日
  • 影响mysqld安全的几个选项分别是什么

    技术影响mysqld安全的几个选项分别是什么影响mysqld安全的几个选项分别是什么,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。影响mysqld安全的几个

    攻略 2021年11月17日