目录
HTTPS和HTTP有哪些区别
两者的主要区别在于安全性和数据加密:
1.加密层:HTTPS 在HTTP 的基础上增加了SSL/TLS协议作为加密层,确保数据传输的安全性。而HTTP数据传输是明文的,容易受到攻击。
2.HTTP连接建立相对简单,TCP三次握手之后便可以进行HTTP的报文传输。而HTTPS在TCP三次握手之后,还需进行SSL/TLS的握手过程,才可以进入加密报文传输。
3.端口:HTTPS 通常使用端口443 ,而HTTP 使用端口80。
4.HTTPS协议需要向CA申请数字证书,来保证服务器的身份是可信的。
HTTPS的工作原理(HTTPS建立连接的过程)
HTTPS 主要基于SSL/TLS协议,确保了数据传输的安全性和完整性,其建立连接并传输数据的过程如下:
**1.密钥交换:**客户端发起HTTPS请求后,服务器会发送其公钥证书给客户端。
**2.证书验证:**客户端会验证服务器的证书是否由受信任的证书办法机构(CA) 签发,并检查证书的有效性。
**3.加密通信:**一旦证书验证通过,客户端会生成一个随机的对称加密密钥,并使用服务器的公钥加密这个密钥,然后发送给服务器。
**4.建立安全连接:**服务器使用自己的私钥解密得到对称加密密钥,此时客户端和服务器都有了相同的密钥,可以进行加密和解密操作。
**5.数据传输:**使用对称加密密钥对所有传输的数据进行加密,确保数据在传输过程中的安全性。
**6.完整性校验:**SSL/TLS协议还包括消息完整性校验机制,如消息认证码,确保数据在传输过程中未被篡改。
**7.结束连接:**数据传输完成后,通信双方会进行会话密钥的销毁,以确保不会留下安全隐患。
TCP和UDP的区别
TCP和UDP的区别有以下八点:
1.TCP是面向连接的协议,需要在数据传输前建立连接;UDP是无连接的,不需要建立连接。
2.TCP提供可靠的数据传输,保证数据包的顺序和完整性;UDP不保证数据包的顺序或完整性。
3.TCP具有拥塞控制机制,可以根据网络状况调整数据传输速率;UDP没有拥塞控制,发送速率通常固定。
4.TCP通过滑动窗口机制进行流量控制,避免接收方处理不过来;UDP没有流量控制。
5.TCP能够检测并重传丢失或损坏的数据包;UDP不提供错误恢复机制。
6.TCP有复杂的报文头部,包含序列号、确认号等信息;UDP的报文头部相对简单。
7.由于TCP的连接建立、数据校验和重传机制,其性能开销通常比UDP大;UDP由于简单,性能开销小。
8.适用场景:TCP适用于需要可靠传输的应用,如网页浏览、文件传输等;UDP适用于对实时性要求高的应用,如语音通话、视频会议等。