HTTPS和HTTP有什么区别。

HTTPS和HTTP有什么区别。

HTTPS全称为Hypertext Transfer Protocol over Secure Socket Layer,中文含义为“超文本传输协议在安全加密字层”,简单来说就是加密数据传输,通俗的说就是安全连接。

HTTPS安全超文本传输协议,它是一个安全通信通道,它基于HTTP开发,用于在客户计算机和服务器之间交换信息。它使用安全套接字层(SSL)进行信息交换,简单来说它是HTTP的安全版。

https相比与http多了安全支持最关键的步骤就是建立server和client的SSL安全连接通道。

客户端对https的支持方案:

这里主要描述流程和逻辑,以及这样做的目的。我们可以看到整个过程分为四个阶段:

1,client建立TCP连接后,发送一个标志请求,双方交换一些与加密相关的信息。这个过程主要是为了协商加密算法。

2,server会紧接着将自己的证书发送给client,来完成client对server身份的认证。这里的证书可以理解为一种网络身份证,即由一些有资质的CA机构(如VeriSign)经过核实后颁发的证明文件,因此如果想让server支持https是需要花钱买数字证书的,同时windows等操作系统也已经提供了一套API来完成对证书合法性的检查(类似于去公安部分查证某人的身份)。

对于这一步,浏览器的标准做法是维护一个CA机构的列表(该列表用户可以干预),当验证证书时,如果是列表中的机构(或经其授权的机构,证书链)颁发的就为可信任证书。然后还会验证证书有效期、证书标明的域名和目前访问的域名是否一致、证书中的公钥能否解开证书数字签名等。对于其他应用客户端,由于已经明确知道server证书的域名等信息,因此可以将认证逻辑做的更加严格。如果客户端发现server认证失败,就断开连接。这样,就可以防止有人伪造server来骗取客户端连接和https请求,从而将https解密盗用接口。

需要明确的一个概念是,SSL的认证和加密之间没有必然联系,也就是说如果client不做认证,后续依然可以继续标准的SSL加密,和server进行https通信。可以这样理解,SSL将身份认证步骤独立出来,如果双方继续连接和握手过程,那么可以继续协商数据加密算法,完成后续的通信。此时对于通信双方来说,这次的数据通道和数据本身都是安全的,不会别第三者截取和解密。但是如果和你打电话的人不是你要的,虽然你说的是暗语,对方也能听懂,因为电话一开始你们俩就从一系列标准暗语里协商了一个来用,暗语只是用来防止第三者窃听。

3,如果server要求,client需要发送自己的证书,server完成对client端身份的认证。目的与第2步类似,但是一般很多server并不要求对client身份进行认证。

4,协商最终加密算法。client用服务器证书中的公钥加密一个随机串密码(pre-mastersecret),并将一个由之前协商算法计算而来的握手消息用pre-mastersecret加密,将这些一并发给server;server收到后,用对应的私钥解密pre-mastersecret,由于密钥只有server知道,因此其他人无法得到pre-mastersecret。server使用pre-mastersecret解密握手消息,并验证是否符合之前的协商规则。server和client通过相同的算法生成一个mastersecret,此后server和client之间用mastersecret作为初始密钥进行对称加解密通信。可以看出,双方先通过非对称加密方式生成对称加密所用的密钥,然后用该密钥进行对称加密通信。关于对称加密/非对称加密/公钥/密钥等概念,请自行google。

需要说明的是,上面四个阶段是从逻辑上区分的,实际SSL协商时client和server之间的数据交互可能有所穿插和合并。通过以上建立起的SSL,保证了通信双方、通道和数据的安全性,后续的通信过程也足够安全。

三、客户端实现https方式

实际上很多浏览器、邮箱等已经是支持https的客户端了。如果我们在开发过程中有客户端对https的支持需求,可以按照标准的https/ssl协议来实现,但是难度还是相当大的。幸好已经有开源的应用那就是libcurl 和 openssl。openssl封装了ssl标准,而libcurl也提供了对openssl的支持。从目前的实际情况看,主流浏览器都预埋了对ssl证书的支持,支持https访问,同时能给访客以更高层级的安全保障。

本文来自投稿,不代表重蔚自留地立场,如若转载,请注明出处https://www.cwhello.com/46138.html

如有侵犯您的合法权益请发邮件951076433@qq.com联系删除

(0)
优化家优化家订阅用户
上一篇 2022年7月3日 00:03
下一篇 2022年7月3日 00:03

相关推荐

  • 教你网站建设公司:网站策划对网站运营的重要作用是什么。

    企业网站建站需要注意的内容都有哪些呢?一个企业在做网站的时候要注意很多的问题了,比如说不同的企业可能在做网站的时候,想要这个网站达到的效果是不一样的,那么到底要实现一个什么样的效果呢?这个就是要在做网…

    2023年6月12日
    00
  • 企业网站建设的优势。

    随着互联网行业的发展,很多企业都建立了自己的网站,但是一切都是按照轻重缓急来安排的,当然网站建设也不例外。今天网站开发小编就给大家讲讲企业网站建设的优势? 对于大多数访问网站的用户来说,进入网站后首先…

    2022年9月10日
    065
  • 怎么让企业网站建设更为大气。

    很多的企业老板咨询,想要做一个大气的网站,那么,下面就由小编为大家讲解一下怎么让企业网站建设更为大气? 怎么让企业网站建设更为大气?小编介绍以下几点: 第一、如果想让企业网站建设的更加高端大气,在整体风…

    2022年10月30日
    015
  • 小编分享互联网营销是什么传统企业应该怎样做才能做好网络营销。

    网络营销是互联网+时代的销售方式,为企业带来了大量的商机,它是一种使用互联网技术和平台来促进产品、服务或品牌的销售与交易。涉及到利用互联网渠道来进行市场营销、销售和服务的过程,包括电子邮件营销、搜索引…

    2023年3月15日
    00
  • 制定年终品牌计划目标。

    企业要推广搜索引擎(SEO)的品牌,必须明确考虑目标,因为目标可以规划时间、人力、资金投入的比例……规划必须由人力策略、时间规划策略、内容布局策略三部分组成。其实我觉得如果是品牌推广的话,其实跟公关的水平有…

    2022年9月10日
    060
  • 更换域名后的网站。

    百度官方对于换域名后的官网保护给出了明确的答复: Q:网站换域名后官网保护可以重新申请吗?和之前的会不会有冲突? A:需重新申请官网保护,需在反馈中心提交反馈,撤销之前的官网保护及保护需求词。 换句话就是说…

    2022年10月17日
    043
  • 网站SEO优化入门。

    什么是SEO? SEO的英文是——搜索引擎优化,字面意思是搜索引擎优化。 在谈SEO之前,你必须先了解“搜索引擎”是如何工作的。在你了解了搜索引擎的操作之后,你就有机会去猜测它的算法,让你的网站在用户通过搜索引擎搜…

    2022年9月10日
    065
  • 网站域名和空间要如何选择。

    企业网站建设一般包括策划、设计、制作、后期维护和运营等。网站建设的前期准备包括网站定位等策略研究,然后是域名和服务器的购买以及代码的编写。网站建设过程需要由策划人员和程序员来完成。网站建设的一个重要…

    2022年9月10日
    074

联系我们

QQ:951076433

在线咨询:点击这里给我发消息邮件:951076433@qq.com工作时间:周一至周五,9:30-18:30,节假日休息