如何建立HTTP和HTTPS连接?

发布者:上海IT外包来源:http://www.lanmon.net点击数:1658

HTTPS是指超文本传输安全协议。 HTTPS是一种与基于HTTP的ssl/tls证书相结合的协议,可确保传输过程中的安全性并降低被恶意劫持的可能性。它解决了http井的三个缺点(听,被篡改,欺骗)如何建立HTTP和HTTPS连接?简单的理解是,HTTPS加密HTTP中的传输内容,然后通过可靠的连接将其传输到另一方的机器。


如何建立HTTP和HTTPS连接?
1,建立连接
HTTP和HTTPS都需要基于建立连接进行数据传输,这是基本操作。
当客户端在浏览器中输入URL时,浏览器将在浏览器DNS缓存,本地DNS缓存和主机中查找相应的记录。如果没有,将请求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如何建立连接?你如何协商加密密码?与HTTP一样,HTTPS首先建立TCP连接,但在建立之后,它不会立即发出请求,请求特定资源,而是首先与另一方协商。密码。协商加密密码的过程是建立TSL连接的过程。


实际上,没有真正的连接,只是新建立的TCP连接上的一层加密协议。但它也被称为连接建立。具体的建立方法如下:客户服务向服务器发送HELLO包,其中包含我支持的加密协议列表。服务器收到传输后,还会向客户端发送HELLO数据包。数据包包含服务器选择的加密算法,并且还包含其自己的数字证书信息。
获得数字证书信息后,您需要前往CA验证证书。验证成功后,您还知道对方的公钥。您应该通知服务器,将来我们将对称加密的密码是什么。当然,使用此密码。公钥加密。在发送消息之前,客户端将首先发送消息,告诉服务器我的下一条消息将使用您刚刚选择的加密协议进行加密。下一条消息是加密的,不要弄错。然后将对称加密的密文发送到服务器。服务器收到服务器后,会根据对称密钥生成一系列复杂的加密算法。在发送到客户端之后,客户端将完成的消息发送到服务器,并且服务器在接收到消息之后返回完成的消息。这时,我们终于完成了加密的准备,讨论了所有的加密方法和密钥,最后可以传输数据。此时,与TSL建立连接的过程结束。目前,保护网站最安全的方法是为网站部署SSL证书。 SSL证书为我们提供了更安全,更隐私和健康的互联网环境。 SSL证书对传输中的数据进行加密,以防止黑客窃取甚至篡改数据。用户的个人信息和公司机密数据。
IT外包
>
400-635-8089
立即
咨询
电话咨询
服务热线
400-635-8089
微信咨询
微信咨询
微信咨询
公众号
公众号
公众号
返回顶部