Linux网络基础:HTTPS 网络传输协议

HTTPS 网络传输协议

HTTP 协议是通过明文传输的,这个数据明文在网络传输过程时,每个人都可以查看到,甚至可以进行修改。

为了解决数据传输安全问题,提出了 HTTPS 安全的网络传输协议。

在 HTTP 协议的基础上加入了 SSL 或 TLS 协议层来提供加密通信和身份验证。保护在客户端(如网页浏览器)和服务器之间传输的数据不被窃听和篡改,同时确保通信双方的身份真实性。

加密

加密/解密,就是在原本的数据之上,添加一个或多个中间数据,辅助进行加密/解密过程(多添加的数据就是 密钥)。

  • 加密就是把明文(要传输的信息)进行一系列变换,文成密文
  • 解密就是把密文再进行一系列变换,还原成明文

常见的加密方式(对称/非对称加密)

  • 对称加密:使用一个密钥就可以同时进行加密和解密
  • 非对称加密:需要用到两个密钥,公开密钥(公钥)、私有密钥(私钥)

公钥对明文加密,变成 密文私钥对密文解密,变成 明文

数据摘要、数字签名

  • 数据摘要:也被称为哈希值,将任意长度的数字信息通过特定算法压缩成较短的字符串的过程

这个短字符串通常被称为数字指纹或哈希值,它唯一地代表了原始数据的内容。

在数据库中,为了保证数据的安全性。用户的输入的密码就是通过 数据摘要 的方式存储在表中。等下次用户输入密码时,通过输入的密码再次生成 数据摘要 对比数据库表中的数据,来验证密码的正确性。

常见的生成数据摘要的算法:MD5、SHA系列…

  • 数字签名:使用发送者的私钥对数据摘要后的数据进行再加密,生成的密文就是数字签名

HTTPS 加密过程探索的方案

前面提到,HTTP传输数据是不安全的。为了保证数据安全,网络传输就不能再进行明文传输要对明文进行加密处理

HTTPS 网络传输协议并不是一蹴而就定下来的。为了使用更好的加密方式,在此期间提出了几个加密的方案,我们来看看:

只使用对称加密(效率低下、不安全)

使用对称加密,需要自身和对方都拥有相同的密钥。这个密钥只有双方才知道,双方通信的安全是可以得到保证的,前提是密钥密钥被破解。

来看看这样的一张图解:
在这里插入图片描述
使用了对称加密,即使是获取了请求数据,没有对应的解密方法,也就获取不到数据的内容。

但是,只使用对称加密就是好的吗?

服务器是为客户端进行服务的,客户可以有多个,但是服务器只有一台。就形成了 一对多 的关系。

一个客户端一个密钥,有多少客户,服务器就要维护多少个密钥&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值