代理ip

>

换ip软件

>

http代理

>

ip代理

您的位置:首页 > 新闻资讯 > 文章内容
HTTP和HTTPS连接如何建立?
来源:网连代理 作者:admin 时间:2019-12-12 15:47:36

  HTTPS指的是超文本传输安全协议。HTTPS是在HTTP的基础上和ssl/tls证书结合起来的一种协议,保证了传输过程中的安全性,减少了被恶意劫持的可能.很好的解决了http的三个缺点(被监听、被篡改、被伪装)那么HTTP和HTTPS连接是如何建立的?简单的理解,HTTPS就是将HTTP中的传输内容进行了加密,然后通过可靠的连接,传输到对方的机器上。

  1、建立连接

  HTTP和HTTPS都需要在建立连接的基础上来进行数据传输,是基本操作

  当客户在浏览器中输入网址后,浏览器会在浏览器DNS缓存,本地DNS缓存,和Hosts中寻找对应的记录,如果没有获取到则会请求DNS服务来获取对应的ip

  当获取到ip后,tcp连接会进行三次握手建立连接

  2、tcp的三次挥手和四次挥手

  过程简图

HTTP和HTTPS连接如何建立?

  3、三次握手(建立连接)

  第一次:建立连接时,客户端发送SYN包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;

  第二次:服务器收到SYN包,向客户端返回ACK(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RCVD状态;

  第三次:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。

  完成三次握手,客户端与服务器开始传送数据,也就是ESTABLISHED状态。

  三次握手保证了不会建立无效的连接,从而浪费资源。

  4、四次握手(断开连接)

  第一次:TCP客户端发送一个FIN,用来关闭客户到服务器的数据传送。

  第二次:服务器收到这个FIN,它发回一个ACK,确认序号为收到的序号加1。和SYN一样,一个FIN将占用一个序号。

  第三次:服务器关闭客户端的连接,发送一个FIN给客户端。

  第四次:客户端发回ACK报文确认,并将确认序号设置为收到序号加1。

  5、HTTP请求过程

  ·建立连接完毕以后客户端会发送响应给服务端

  ·服务端接受请求并且做出响应发送给客户端

  ·客户端收到响应并且解析响应给用户

HTTP和HTTPS连接如何建立?

  HTTPS

  ·在使用HTTPS是需要保证服务端配置正确了对应的安全证书

  ·客户端发送请求到服务端

  ·服务端返回公钥和证书到客户端

  ·客户端接收后会验证证书的安全性,如果通过则会随机生成一个随机数,用公钥对其加密,发送到服务端

  ·服务端接受到这个加密后的随机数后会用私钥对其解密得到真正的随机数,随后用这个随机数当做私钥对需要发送的数据进行对称加密

  ·客户端在接收到加密后的数据使用私钥(即生成的随机值)对数据进行解密并且解析数据呈现结果给客户

  ·SSL加密建立

  HTTPS是如何建立连接的,又是怎么进行加密的?

  那HTTPS是如何建立连接的呢,怎么商量好加密密码的呢?HTTPS同HTTP一样,首先建立起TCP连接,但是建立好之后并不是立即发出请求,索要具体的资源,而是先和对方商量加密的密码。商量的加密密码的过程就是建立TSL连接的过程。其实并没有建立真实的连接,只是在刚刚建立好的TCP连接上,包裹上一层加密协议而已。但是也被形象的称作连接建立。具体建立方式如下:客服端发给服务器一个HELLO包,里面有我支持的加密协议列表。服务器收到后发送也给客户端发送一个HELLO数据包,数据包内包涵服务器挑选的加密算法,还包含自己的数字证书信息。你拿到他的数字证书信息之后就需要去向CA校验证书,校验成功后也知道了对方的公钥,就该通知服务器,我们以后对称加密的密码是多少,当然,这个密码是要用公钥加密的。在这条消息发送之前,客户端会先发送一条消息,告诉服务器,我下一个消息将使用你刚刚挑选的加密协议进行加密了,下一个消息是加密后的哦,不要搞错。之后将对称加密的密文发给服务器。服务器接收到之后,会根据对称密钥生成一系列复杂的加密算法,在传输给客服端,客户端收到后会给服务器发送一个Finished Message,服务器收到消息后也回一个Finished Message。这时,我们终于完成了加密的准备工作,一切加密方式和密钥都商量好了,终于可以传输数据了。至此,TSL建立连接的过程结束。

  目前网站最安全的保护方式就是为网站部署SSL证书,SSL证书为我们提供了更加安全、隐私、健康的互联网环境,SSL证书对传输中的数据进行加密,防止黑客的盗取甚至篡改数据,保护用户的个人信息及企业机密数据。


相关文章内容简介
推荐阅读
  • 06 2020-01
    Java Proxy和CGLIB动态代理原理

    动态代理在Java中有着广泛的应用,比如Spring AOP,Hibernate数据查询、测试框架的后端mock、RPC,Java注解对象获取等。静态代理的代理关系在编译时就确定了,而动态代理的代理关系是在编译期确

  • 03 2019-09
    为什么要使用代理服务

    代理IP这个词除了在访问网络的时候会被想到,那么你知道代理IP为什么会受到如此大的欢迎,为什么要使用代理服务吗?随着网络的发展,越来越多的人投入到网络营销中去,特别是对于那些从

  • 24 2020-04
  • 10 2019-08
    动态代理IP效果怎么样

    现在很多工作都需要代理IP的帮助来完成,例如营销、爬取数据等,利用代理IP来把本机的IP换掉,这样才能解决IP限制问题,继续进行访问。那么,动态代理IP效果怎么样?代理IP分为静态IP和动

  • 27 2019-07
    使用代理的优点和缺点是什么

    代理IP即代理服务器,是一种重要的安全功能,它的工作主要在开放系统互联(OSI)模型的对话层,从而起到防火墙的作用。使用代理的优点和缺点是什么?下面我们一同来了解看看!代理技术

  • 21 2020-04