http 和 https 的异同

引言

网站的URL格式如下:

1.域名是对不同的网站页面取名

2.通信协议是指服务器和浏览器交流的语言

HTTP和HTTPS的介绍

1.HTTP

定义:Hyper Text Transfer Protocol 超文本传输协议,是一种使用  明文数据  传输的网络协议。

特点:HTTP协议被用于在Web浏览器和网站服务器之间传递信息,以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息。

 

 2.HTTPS

定义:Hyper Text Transfer Protocol over Secure Socket Layer 安全套接字层超文本传输协议

特点:1.是在HTTP的基础上增加了数据加密,可防止数据泄漏,如在发送秘密邮件时

2.当使用 https 连接,服务器响应初始连接,并提供它所支持的加密方法。作为回应,客户端选择一个连接方法,并且客户端和服务器端交换证书验证彼此身份。完成之后,在确保使用相同密钥的情况下传输加密信息,然后关闭连接。为了提供 https 连接支持,服务器必须有一个公钥证书,该证书包含经过证书机构认证的密钥信息,大部分证书都是通过第三方机构授权的,以保证证书是安全的。

HTTP和HTTPS的工作过程

1.浏览器打开一个 TCP 连接。

2.浏览器发送 HTTP 请求到服务器端。

3.服务器发送 HTTP 回应信息到浏览器。

4.TCP 连接关闭

SSL 包含如下动作:

1.验证服务器端。(交换证书验证彼此身份)

2.允许客户端和服务器端选择加密算法和密码,确保双方都支持。

3.验证客户端(可选)。

4.使用公钥加密技术来生成共享加密数据。

5.创建一个加密的 SSL 连接。

6.基于该 SSL 连接传递 HTTP 请求。

HTTPS 跟 HTTP类似于Java语言中父类子类的关系,HTTPS在HTTP的基础上增加了 SSL。

 相同点

大多数情况下,HTTP 和 HTTPS 是采用的同一个基础协议,作为 HTTP 或 HTTPS 客户端的浏览器,会设立一个连接到 Web 服务器指定的端口。

当服务器接收到请求,它会返回一个状态码[3]

  • 200 - 请求成功
  • 301 - 资源(网页等)被永久转移到其它URL
  • 404 - 请求的资源(网页等)不存在
  • 500 - 内部服务器错误

)以及消息,这个回应可能是请求信息、或者指示某个错误发送的错误信息。系统使用统一资源定位器 URL 模式,因此资源可以被唯一指定。而 HTTPS 和 HTTP 唯一不同的只是一个协议头(https)的说明。

不同点

1.URL抬头不同

2.安全性不同

3.端口号不同。HTTP 标准端口是 80 ,而 HTTPS 的标准端口是 443。

4.在 OSI 网络模型中,HTTP 工作于应用层,而 HTTPS 工作在传输层。

5.HTTP 无需证书,而 HTTPS 需要认证证书。

 

 

 参考文章链接:

[1] https://zhuanlan.zhihu.com/p/151764515

[2] https://product.pconline.com.cn/itbk/software/dnyw/1703/8917981.html

[3] https://www.runoob.com/http/http-status-codes.html

posted @ 2023-03-01 15:37  zWANG1228  阅读(78)  评论(0)    收藏  举报