http与https的区别

170 阅读3分钟

http

是什么

是超文本传输协议

首先是一个协议,协议是计算机之间通信的规范

传输就代表http是两台计算机之间传输数据的协议

超文本就是值http传输的内容,是混合了文字、图片、音频、超链接等内容的结构文本,html就是一种超文本数据格式

---http是一个在计算机世界里在亮点之间传输文字、图片等超文本数据的约定和规范

 

HOW实现

相关的协议(理论)TCP/IP(有层次的协议栈) DNS URI HTTPS

有什么特点,优点,缺点

  • 灵活可扩展,之规定了报文的基本格式,发展很快

  • 可靠传输,因为TCP是一个可靠的传输协议

  • 是应用层协议,几乎可以传一切东西

  • 请求-应答的通信模型,契合传统的C/S系统家翁吧,发展处了B/S架构

  • 无状态,状态需要内部维持一些数据

 

优点:灵活、简单和应用广泛跨平台

缺点:无状态和明文,不安全(身份验证和完整校验),性能(TCP的对头阻塞,http2和3可以解决

 

有什么用

相关的应用技术(应用)互联网、浏览器

 

具体实现

大文件

链接管理

重定向

缓存策略

  1. 首先看缓存是否有效,主要是catch-control和expires,双方约定是否要缓存下来,catch-control有max-age,no-catch和no-store

  2. 在有缓存的情况下怎么利用缓存数据,就是条件请求,满足一定条件下请求新数据,主要是用if-开头的几个字段来标志,随着响应一起到达,用缓存的etags来询问服务器if-none-match,用缓存的last-modify来询问服务器的if-modify-since,服务器返回304则使用缓存

cookie

 

httpS

是什么

来源:明文和不安全,什么是安全,完机身不

https是为http增加了四大安全特性的新协议

 

How实现

把TCP、IP换成了SSSL/TLS(HTTPovertcp/ip-->Http over SSL/TLS)传输层安全TLS由一些协议组成,使用了密码学的前沿技术,使用TLS建立链接的时候要用密码套件来进行通信

 

对称加密和非对称加密

数字签名与证书

 

机密性:使用加密算法加密

完整性:摘要算法,哈希函数计算出源数据的数字指纹,源文后面附上摘要,一起加密后传输

身份认证:用私钥对摘要加密(因为效率低),形成数字签名,数字签名跟公钥一样也是完全公开的

公钥的信任问题:数字证书,由第三方信任中心,来给公钥签名认证

 

 

Http2/3

来源,主攻性能

 

HOW

头部压缩

二进制格式,文本打散成二进制帧

为此定义了流,可以再一个流上传多个碎片化消息,也就是多路复用

改变请求-应答模式,可以服务器推送

强化安全,

 

Http3 完全解决对头阻塞,因为tcp有丢包重传