【Java面试题】HTTP与 HTTPS 的区别

HTTP 与 HTTPS 的区别 :

主要体现在三个方面,分别是信息传输安全证书和身份验证连接方式

信息传输安全:

HTTP 是超文本传输协议,HTTP下的信息是明文传输的,因此使用HTTP协议可能导致信息被截获或者第三方恶意篡改,这对于隐私信息是不安全的。

HTTPS协议是一种具有SSL的加密传输的协议(HTTPS是由SSL + HTTP 构建),通过SSL协议

对传输的内容进行加密,从而保证信息传输的安全性。

证书和身份验证:

HTTP协议不需要证书。

HTTPS需要向CA 申请证书,一般免费的证书比较少,所以需要一定的费用,同时,HTTPS协议不仅可以加密传输信息,还可以对身份进行认证,能够提供对网站服务器的认证,防止中间人攻击。

连接方式:

HTTP和HTTPS 使用的连接方式是完全不同的,用的端口也不一样,HTTP默认的端口是80,HTTPS默认的端口是443,HTTP的连接方式很简单,是无状态的。

HTTP的连接方式有以下两种:

  1. 短连接 (非持续连接),指服务端对于来自客户端的每一个请求均建立一个连接,当服务端响应请求后就关闭连接,不为其他的请求而持续连接。

  2. 长连接 (持续连接),指服务端响应请求后,不关闭连接,为之后的其他的请求保持连接状态,这种连接方式下,一个连接可以发送多个请求,一个请求完成后不会关闭连接,继续等待下一个请求连接。

HTTPS的连接方式:

当客户端向服务器发起请求时,服务器会将SSL证书发给客户端,客户端会对SSL证书进行验证,确认服务器身份的真实性。如果证书通过,则客户端和服务器之间会建立一个SSL/TLS 加密连接,所有数据的传输都会通过这个加密连接进行安全传输。

相关推荐
sunshine__sun7 小时前
JMeter 测试 WebSocket 接口的详细教程
websocket·网络协议·jmeter
有谁看见我的剑了?7 小时前
为 Promethus 配置https访问
网络协议·http·https
若梦plus10 小时前
http基于websocket协议通信分析
前端·网络协议
zhangjin122211 小时前
kettle插件-kettle http post plus插件失灵了?继续迭代优化轻松调用公卫高安全系数接口
http·医疗·医院信息科·kettle公卫https接口·kettle证书·kettle国产插件
蜡笔小柯南12 小时前
解决:nginx: [emerg] the “ssl“ parameter requires ngx_http_ssl_module
nginx·http·ssl
一大树15 小时前
TCP 三次握手:为什么需要三次交互才能建立可靠连接?
网络协议
枷锁—sha17 小时前
【BUUCTF系列】[极客大挑战 2019]Http 1
网络·网络协议·http
Running_C17 小时前
一文读懂跨域
前端·http·面试
gAlAxy...17 小时前
HTTP 请求转发与重定向详解及其应用(含 Java 示例)
网络·网络协议·http
居7然1 天前
MCP协议更新:从HTTP+SSE到Streamable HTTP,大模型通信的进化之路
网络·网络协议·http