HTTP 和HTTPS

一、HTTP和HTTPS的基本概念

HTTP: 是互联网上应用最为广泛的一种网络协议,是一个而护短和服务端请求和应答的标准(TPC),用于从WWW服务器传输超文本到本地浏览器的传输协议,使网络传输减少。

HTTPS: 是以安全为目标的HTTP通道,简单理解为HTTP的安全版,即在HTTP下加入SSL层,HTTPS的安全基础就是SSL,因此加密的详细内容就需要SSL。

HTTPS协议的主要作用:

  • 建立一个信息安全通道,来保证数据传输的安全;
  • 确认网站的真实性。

二、http1.x和http2.x的区别

  1. HTTP2使用的是二进制传输,HTTP1.x是字符串传送,二进制传送的单位是帧和流,流由帧组成,同时流还有流ID标识。
  2. HTTP2支持多路复用:因为存在ID流,所以通过一个http请求实现多个http请求传输成为了可能,可以通过流ID来标识究竟是哪个流从而定位到是哪个http请求。
  3. HTTP2头部压缩:HTTP2通过gzip和compress压缩头部然后再发送,同时客户端和服务端同时维护一张头信息表,所有的字段都记录在这张表中,这样后面每次传输只需要传输表中的索引就行,通过索引来查询表头的值。
  4. HTTP2指出服务器推送:HTTP2支持在未经客户端许可的情况下主动向客户端推送内容。

三、http请求方式

1、opions 返回服务器针对特定资源所支持的HTML请求方法 或web服务器发送测试服务器功能(允许客户端查看服务器性能)
2、Get 向特定资源发出请求(请求指定页面信息,并返回实体主体)
3、Post 向指定资源提交数据进行处理请求(提交表单、上传文件),又可能导致新的资源的建立或原有资源的修改
4、Put 向指定资源位置上上传其最新内容(从客户端向服务器传送的数据取代指定文档的内容)
5、Head 与服务器索与get请求一致的相应,响应体不会返回,获取包含在小消息头中的原信息(与get请求类似,返回的响应中没有具体内容,用于获取报头)
6、Delete 请求服务器删除request-URL所标示的资源(请求服务器删除页面)
7、Trace 回显服务器收到的请求,用于测试和诊断
8、Connect HTTP/1.1协议中能够将连接改为管道方式的代理服务器

GET 和 POST 请求的区别

Get请求的目的是给予服务器一些参数,以便从服务器获取列表.例如:list.aspx?page=1,表示获取第一页的数据

Post请求的目的是向服务器发送一些参数,例如form中的内容.

具体区别可以参考此链接 GET POST区别

四、HTTPS如何保证安全

HTTPS 全称(Hypertext Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道。 HTTPS=HTTP+SSL/TLS 如今SSL已被废弃,所以现在我们只关注TLS。为了解决HTTP协议的问题,HTTPS引入了 数据加密和身份验证机制 。在开始传输数据之前,通过安全可靠的TLS协议进行加密,从而保证后续加密传输数据的安全性。

TLS协议: 传输层安全性协议(Transport Layer Security)及前身 安全套接层(Secure Sockets Layer) 是一种安全协议,目的是为了保证 网络通信安全和数据完整性

受TLS协议保护的通信过程: 先对传输的数据进行加密(通常使用对称加密算法)。并且对称加密的密钥是为每一个连接唯一生成的(基于TLS握手阶段协商的加密算法和共享密钥),然后发送的每条消息都会通过消息验证码(MAC),来进行消息完整性检查,最后还可以使用公钥对通信双方进行身份验证。

https的作用:

  • 内容加密 建立一个信息安全通道,来保证数据传输的安全;
  • 身份验证 确认网站的真实性;
  • 数据完整性 防止内容被第三方冒充或者篡改。
对称算法和非对称算法

对称加密算法: 在对称加密算法中,加密使用的密钥和解密使用的密钥是相同的。也就是说,加密和解密都是使用的同一个密钥。

算法特征:
1、加密方和解密方使用同一个密钥;
2、加密解密的速度比较快,适合数据比较长时的使用;
3、密钥传输的过程不安全,且容易被破解,密钥管理也比较麻烦

非对称加密算法: 指加密和解密使用不同密钥的加密算法。非对称加密算法需要两个密钥:公钥(publickey)私钥(privatekey)。

公钥与私钥是一对存在,如果用公钥对数据进行加密,只有用对应的私钥才能解密;如果用密钥对数据进行加密,那么只有用对应的公钥才能解密。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。

非对称算法优缺点:
公钥密码体制采用的加密密钥(公开钥)和解密密钥(秘密钥)是不同的。由于加密密钥是公开的,密钥的分配和管理就很简单,而且能够很容易地实现数字签名,因此最适合于电子商务应用的需要。其主要的优点是:
(1)密钥分配简单。
(2)密钥的保存量少。
(3)可以满足互不相识的人之间进行私人谈话时的保密性要求。
(4)可以完成数字签名和数字鉴别。
但在实际应用中,公钥密码体制并没有完全取代私钥密码体制,这是因为公钥密码体制在应用中存在以下几个缺点:
(1)公钥密码是对大数进行操作,计算量特别浩大,速度远比不上私钥密码体制。
(2)公钥密码中要将相当一部分密码信息予以公布,势必对系统产生影响。
(3)在公钥密码中,若公钥文件被更改,则公钥被攻破。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值