<output id="x92m1"></output>
    1. 网站logo
      SEO
      网站优化
      seo369团队,专注SEO网站优化
      百度关键词排名优化,先排名后付费
      引领SEO见效果付费新潮流
      联系电话
      您现在的位置: seo优化SEO优化 

      https和http有何区别?HTTPS的七个误解

      来源:SEO369  2018-02-22  关键字:https http

       https和http我们经常见到的url形式,这两种有什么区别,恐怕大家都不太理解,现在我们就简单介绍一下他们之间的异同。

       

      https和http有何区别?HTTPS的七个误解

       

      首先谈谈什么是HTTPS:

        HTTPS(Secure Hypertext Transfer Protocol)安全超文本传输协议 它是一个安全通信通道,它基于HTTP开发,用于在客户计算机和服务器之间交换信息。它使用安全套接字层(SSL)进行信息交换,简单来说它是HTTP的安全版。 它是由Netscape开发并内置于其浏览器中,用于对数据进行压缩和解压操作,并返回网络上传送回的结果。

        HTTPS实际上应用了Netscape的安 全全套接字层(SSL)作为HTTP应用层的子层。(HTTPS使用端口443,而不是象HTTP那样使用端口80来和TCP/IP进行通信。)SSL使 用40 位关键字作为RC4流加密算法,这对于商业信息的加密是合适的。HTTPS和SSL支持使用X。509数字认证,如果需要的话用户可以确认发送者是谁。

      HTTPS和HTTP的区别:

        https协议需要到ca申请证书,一般免费证书很少,需要交费。

        http是超文本传输协议,信息是明文传输,https 则是具有安全性的ssl加密传输协议 http和https使用的是完全不同的连接方式用的端口也不一样:前者是80,后者是443。

        http的连接很简单,是无状态的 HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议 要比http协议安全 HTTPS解决的问题:

        1、信任主机的问题。 采用https 的server 必须从CA 申请一个用于证明服务器用途类型的证书。

        改证书只有用于对应的server 的时候,客户度才信任次主机。所以目前所有的银行系统网站,关键部分应用都是https 的。 客户通过信任该证书,从而信任了该主机。其实这样做效率很低,但是银行更侧重安全。 这一点对我们没有任何意义,我们的server,采用的证书不管自己issue 还是从公众的地方issue, 客户端都是自己人,所以我们也就肯定信任该server。

        2、通讯过程中的数据的泄密和被窜改。

        1)一般意义上的https, 就是 server 有一个证书。

        a) 主要目的是保证server 就是他声称的server。这个跟第一点一样。

        b) 服务端和客户端之间的所有通讯,都是加密的。

        i、具体讲,是客户端产生一个对称的密钥,通过server 的证书来交换密钥。 一般意义上的握手过程。

        ii、加下来所有的信息往来就都是加密的。 第三方即使截获,也没有任何意义。因为他没有密钥。 当然窜改也就没有什么意义了。

        2)少许对客户端有要求的情况下,会要求客户端也必须有一个证书。

        a) 这里客户端证书,其实就类似表示个人信息的时候,除了用户名/密码, 还有一个CA 认证过的身份。 应为个人证书一般来说上别人无法模拟的,所有这样能够更深的确认自己的身份。

        b) 目前少数个人银行的专业版是这种做法,具体证书可能是拿U盘作为一个备份的载体。像我用的交通银行的网上银行就是采取的这种方式。 HTTPS 一定是繁琐的。

        a) 本来简单的http协议,一个get一个response。由于https 要还密钥和确认加密算法的需要。单握手就需要6/7 个往返。

        i、任何应用中,过多的round trip 肯定影响性能。

        b) 接下来才是具体的http协议,每一次响应或者请求, 都要求客户端和服务端对会话的内容做加密/解密。

        i、尽管对称加密/解密效率比较高,可是仍然要消耗过多的CPU,为此有专门的SSL 芯片。 如果CPU 信能比较低的话,肯定会降低性能,从而不能serve 更多的请求。

        附:SSL的简介:

        SSL是Netscape公司所提出的安全保密协议,在浏览器(如Internet Explorer、Netscape Navigator)和Web服务器(如Netscape的Netscape Enterprise Server、ColdFusion Server等等)之间构造安全通道来进行数据传输,SSL运行在TCP/IP层之上、应用层之下,为应用程序提供加密数据通道,它采用了RC4、MD5 以及RSA等加密算法,使用40 位的密钥,适用于商业信息的加密。

        同时,Netscape公司相应开发了HTTPS协议并内置于其浏览器中,HTTPS实际上就是SSL over HTTP,它使用默认端口443,而不是像HTTP那样使用端口80来和TCP/IP进行通信。HTTPS协议使用SSL在发送方把原始数据进行加密,然 后在接受方进行解密,加密和解密需要发送方和接受方通过交换共知的密钥来实现,因此,所传送的数据不容易被网络黑客截获和解密。

        然而,加密和解密过程需要耗费系统大量的开销,严重降低机器的性能,相关测试数据表明使用HTTPS协议传输数据的工作效率只有使用HTTP协议传输的十 分之一。

        假如为了安全保密,将一个网站所有的Web应用都启用SSL技术来加密,并使用HTTPS协议进行传输,那么该网站的性能和效率将会大大降低,而且没有这个必要,因为一般来说并不是所有数据都要求那么高的安全保密级别,所以,我们只需对那些涉及机密数据的交互处理使用HTTPS协议,这样就做到鱼与熊掌兼得。总之不需要用https 的地方,就尽量不要用。

       

        HTTPS的七个误解

        误解七:HTTPS无法缓存

        许多人以为,出于安全考虑,浏览器不会在本地保存HTTPS缓存。实际上,只要在HTTP头中使用特定命令,HTTPS是可以缓存的。

        微软的IE项目经理Eric Lawrence写道:

        "说来也许令人震惊,只要HTTP头允许这样做,所有版本的IE都缓存HTTPS内容。比如,如果头命令是Cache-Control:max-age=600,那么这个网页就将被IE缓存10分钟。IE的缓存策略,与是否使用HTTPS协议无关。(其他浏览器在这方面的行为不一致,取决于你使用的版本,所以这里不加以讨论。)"

        Firefox默认只在内存中缓存HTTPS。但是,只要头命令中有Cache-Control:Public,缓存就会被写到硬盘上。下面的图片显示,Firefox的硬盘缓存中有HTTPS内容,头命令正是Cache-Control:Public。

        误解六:SSL证书很贵

        如果你在网上搜一下,就会发现很多便宜的SSL证书,大概10美元一年,这和一个.com域名的年费差不多。而且事实上,还能找到免费的SSL证书。

        在效力上,便宜的证书当然会比大机构颁发的证书差一点,但是几乎所有的主流浏览器都接受这些证书。

        误解五:HTTPS站点必须有独享的IP地址

        由于IPv4将要分配完毕,所以很多人关心这个问题。每个IP地址只能安装一张SSL证书,这是毫无疑问的。但是,如果你使用子域名通配符SSL证书(wildcard SSL certificate,价格大约是每年125美元),就能在一个IP地址上部署多个HTTPS子域名。比如,https://www.httpwatch.com和https://store.httpwatch.com,就共享同一个IP地址。

        另外,UCC(统一通信证书,Unified Communications Certificate)支持一张证书同时匹配多个站点,可以是完全不同的域名。SNI(服务器名称指示,Server Name Indication)允许一个IP地址上多个域名安装多张证书。服务器端,Apache和Nginx支持该技术,IIS不支持;客户端,IE7+、Firefox 2.0+、Chrome 6+、Safari 2.1+和Opera 8.0+支持。

        误解四:转移服务器时要购买新证书

        部署SSL证书,需要这样几步:

        1. 在你的服务器上,生成一个CSR文件(SSL证书请求文件,SSL Certificate Signing Request)。

        2. 使用CSR文件,购买SSL证书。

        3. 安装SSL证书。

        这些步骤都经过精心设计,保证传输的安全,防止有人截取或非法获得证书。结果就是,你在第二步得到的证书不能用在另一台服务器上。如果你需要这样做,就必须以其他格式输出证书。

        比如,IIS的做法是生成一个可以转移的.pfx文件,并加以密码保护。

        将这个文件传入其他服务器,将可以继续使用原来的SSL证书了。

        误解三:HTTPS太慢

        使用HTTPS不会使你的网站变得更快(实际上有可能,请看下文),但是有一些技巧可以大大减少额外开销。

        首先,只要压缩文本内容,就会降低解码耗用的CPU资源。不过,对于当代CPU来说,这点开销不值一提。

        其次,建立HTTPS连接,要求额外的TCP往返,因此会新增一些发送和接收的字节。但是,从下图可以看到,新增的字节是很少的。

      clip_image006

        第一次打开网页的时候,HTTPS协议会比HTTP协议慢一点,这是因为读取和验证SSL证书的时间。下面是一张HTTP网页打开时间的瀑布图。

        同一张网页使用HTTPS协议之后,打开时间变长了。

        

      https和http有何区别?HTTPS的七个误解

       

        建立连接的部分,大约慢了10%。但是,一旦有效的HTTPS连接建立起来,再刷新网页,两种协议几乎没有区别。先是HTTP协议的刷新表现:

        

      https和http有何区别?HTTPS的七个误解

       

        然后是HTTPS协议:

        

      https和http有何区别?HTTPS的七个误解

       

        某些用户可能发现,HTTPS比HTTP更快一点。这会发生在一些大公司的内部局域网,因为通常情况下,公司的网关会截取并分析所有的网络通信。但 是,当它遇到HTTPS连接时,它就只能直接放行,因为HTTPS无法被解读。正是因为少了这个解读的过程,所以HTTPS变得比较快。

        误解二:有了HTTPS,Cookie和查询字符串就安全了

        虽然无法直接从HTTPS数据中读取Cookie和查询字符串,但是你仍然需要使它们的值变得难以预测。

        比如,曾经有一家英国银行,直接使用顺序排列的数值表示session id:

        

      https和http有何区别?HTTPS的七个误解

       

        黑客可以先注册一个账户,找到这个cookie,看到这个值的表示方法。然后,改动cookie,从而劫持其他人的session id。至于查询字符串,也可以通过类似方式泄漏。

        误解一:只有注册登录页,才需要HTTPS

        这种想法很普遍。人们觉得,HTTPS可以保护用户的密码,此外就不需要了。Firefox浏览器新插件Firesheep,证明了这种想法是错的。我们可以看到,在Twitter和Facebook上,劫持其他人的session是非常容易的。

        咖啡馆的免费WiFi,就是一个很理想的劫持环境,因为两个原因:

        1. 这种WiFi通常不会加密,所以很容易监控所有流量。

        2. WiFi通常使用NAT进行外网和内网的地址转换,所有内网客户端都共享一个外网地址。这意味着,被劫持的session,看上去很像来自原来的登录者。

        以Twitter为例,它的登录页使用了HTTPS,但是登录以后,其他页面就变成了HTTP。这时,它的cookie里的session值就暴露了。

        

      https和http有何区别?HTTPS的七个误解

       

        也就是说,这些cookie是在HTTPS环境下建立的,但是却在HTTP环境下传输。如果有人劫持到这些cookie,那他就能以你的身份在Twitter上发言了。



      说明:本文由SEO369团队编辑整理,有侵犯权益的地方请联系站长删除,如果需要了解更过SEO方面的知识请关注SEO369。
      SEO优化logo
      频道总排行
      新网站的SEO优化排名应该注意的几个问题
      https和http有何区别?HTTPS的七个误解
      SEO优化这样修改简单网页模板更加好
      做SEO运营5个实用的思维技巧
      SEO优化给你更好的用户体验
      网站常规的SEO优化步骤有哪些?
      网站优化切忌十点
      关于seo优化技术之内链的使用方法
      SEO优化应该要避免的四个操作误区
      SEO优化百度为什么喜欢原创文章
      您可能还想了解
      运营一个新网站项目分四步
      浅谈友情链接的作用和交换方法
      浅谈分析友好型的网站结构是怎么样的?
      百度快照是什么意思?
      SEO优化方案该怎么写比较合理?
      新站注重站内优化更重要
      对seo的几个认识
      什么是垃圾外链,对网站有什么危害吗?
      HTTP头信息大全:SEO基础技术知识
      如何通过网站流量变化来分析SEO优化效果
      栏目导航
      SEO基础
      SEO优化
      SEO技术
      SEO教程
      快速排名
      关键词优化
      整站优化
      百度SEO
      网站建设
      网站优化
      SEO | 网站优化 | 各地SEO资讯 | 网站地图
      【SEO369】探索SEO优化的奥秘,专业提供企业SEO、网站优化、网站建设服务
      版权所有:SEO369  备案号:津ICP备08002309号
      在线客服
      网站优化
      QQ: 41868630
      TEL: 4008001220
      美国XXXX
      <output id="x92m1"></output>