网络数据加密
Varsion

🔐加密方式

对称加密

对称加密:加密(encryption)与解密(decryption)用的是同样的密钥(secret key)或者同一套加密逻辑的加密方式。

对称加密有很多种算法,由于它效率很高,所以被广泛使用在很多加密协议中。由于加密解密的密钥相同,所以一旦密钥泄漏就会使改加密失效。

通常来讲,密钥越大,破解的难度就越大,加密的开销就越大,密钥的大小既要顾及到安全性,也要考虑到效率(当然,密钥泄漏就什么都没有了)。

常用的对称加密方法有:

  • DES(Data Encryption Standard):数据加密标准,速度较快
  • 3DES(Triple DES):是基于DES,对一块数据用三个不同的密钥进行三次加密
  • AES(Advanced Encryption Standard):高级加密标准,速度快,安全级别高

非对称加密

非对称加密用的是一对秘钥,分别叫做公钥(public key)和私钥(private key),非对称加密也可以用于认证(JWT)。

私钥只能由一方安全保管,不能外泄,而公钥则可以发给任何请求它的人。非对称加密使用这对密钥中的一个进行加密,而解密则需要另一个密钥。

比如,向服务请求公钥,服务端将公钥返回,使用公钥对消息加密,只有持有私钥次啊能解密消息。与对称加密不同的是,服务端不需要将私钥通过网络发送出去,因此安全性大大提高。

RSA加密

RSA的安全性是基于极大整数因数分解的难度。换言之,对一极大整数做因数分解愈困难,RSA算法愈可靠。

假如有人找到一种快速因数分解的算法的话,那么用RSA加密的信息的可靠性就肯定会极度下降。但找到这样的算法的可能性是非常小的。

📡HTTPS加密策略

HTTP 是明文传输的,也就是说客户端和服务端的通信信息是肉眼可见的,随便的一个抓包工具都可以拿到传输内容。为了解决 HTTP 存在的安全风险 HTTPS 在 HTTP 与 TCP 层之间加入 TLS/SSL 加密协议来避免安全风险

🙋TLS握手

TLS(Transport Layer Security) 是 SSL(Secure Sockets Laye) 的升级版本,作用是一样的

TLS的主要目的包括:

  • 认证网站,确保数据发送到了争取的网站,而非假冒的钓鱼网站
  • 建立加密链接,防止数据在传输过程中被他人获取
  • 保证数据完整性,确保在传输过程中不会被改变

TLS握手过程

  • 客户端 发出请求:”Hello!” 并将客户端支持的TLS版本和加密算法发送给服务器
  • 服务器 接受并返回请求:”Hello!” 并将TLS证书和公钥发送给客户端
  • 客户端校验证书,如有效则使用公钥构建 pre-master secret ,并将其发送到服务器
  • 服务器使用私钥解密 pre-master secret ,并将其当作这次回话的 Session Key

此时客户端和服务器建立了加密的安全链接。

未命名

即,每次建立 TLS 链接时,通过非对称加密协商一个 Session Key 并使用该 Key 构建对称加密的密钥。

本次链接后续所有的数据都是用该密钥进行对称加密后传输。该 Key 在本次链接传输完成之后销毁。

  • Post title:网络数据加密
  • Post author:Varsion
  • Create time:2021-05-25 10:29:19
  • Post link:https://blog.varsion.cn/post/515465b0.html
  • Copyright Notice:All articles in this blog are licensed under BY-NC-SA unless stating additionally.
Comments