【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 加密连接,所有数据的传输都会通过这个加密连接进行安全传输。

相关推荐
猫头虎5 小时前
如何查看局域网内IP冲突问题?如何查看局域网IP环绕问题?arp -a命令如何使用?
网络·python·网络协议·tcp/ip·开源·pandas·pip
爱吃小胖橘8 小时前
Unity网络开发--超文本传输协议Http(1)
开发语言·网络·网络协议·http·c#·游戏引擎
北城以北12312 小时前
生成树协议STP详解
网络协议
杰瑞学AI13 小时前
我的全栈学习之旅:FastAPI (持续更新!!!)
后端·python·websocket·学习·http·restful·fastapi
ErizJ17 小时前
WebSocket | 一点简单了解
网络·websocket·网络协议
游戏开发爱好者818 小时前
BShare HTTPS 集成与排查实战,从 SDK 接入到 iOS 真机调试(bshare https、签名、回调、抓包)
android·ios·小程序·https·uni-app·iphone·webview
2501_9151063220 小时前
苹果软件加固与 iOS App 混淆完整指南,IPA 文件加密、无源码混淆与代码保护实战
android·ios·小程序·https·uni-app·iphone·webview
2501_916013741 天前
iOS 推送开发完整指南,APNs 配置、证书申请、远程推送实现与上架调试经验分享
android·ios·小程序·https·uni-app·iphone·webview
2501_915909061 天前
HTML5 与 HTTPS,页面能力、必要性、常见问题与实战排查
前端·ios·小程序·https·uni-app·iphone·html5
CiLerLinux1 天前
第五十二章 ESP32S3 UDP 实验
网络·单片机·嵌入式硬件·网络协议·udp