Advertisement

网络加密技术

阅读量:

网络加密技术

  • 哈希加密

    • 基本原理
    • 常用的哈希函数
  • 对称加密(单密钥加密)

    • 基本原理
    • 特点
    • 常用的对称加密算法
      • DES
  • 非对称加密(公开密钥)

    • 基本原理
    • 特点
    • 常用的非对称加密技术
      • RSA
  • 对称+非对称

    • HTTPS加密

加密技术:利用技术手段把数据变为乱码(加密)传送,到达目的地后再用 相同或不同的手段还原(解密)。

哈希加密

基本原理

哈希函数是一个单向函数,它将目标文本转化为固定长度的字符串。由于是单向函数,不具备可逆性,实现加密保护。
在这里插入图片描述

Q:我用哈希函数加密了明文,从此以后,不仅攻击者解读不了加密后的字符串,我也不懂了鸭?

A:某些应用场景是不需要解密的,即,被保护的数据只需要做验证,举个栗子:

简单的用户登录场景

你的用户名与密码存储(没有使用哈希加密)在服务器数据库中,当服务器数据库泄露数据时,你的用户名与密码也就泄露了。

假设,你的用户名和密码经过哈希加密,那么服务器数据库中将存储加密后的密文,即使泄露数据也是一大堆哈希字符串。

而正常的登陆验证过程,只需要验证密文是否已知就行不需要知道明文。如下图:
在这里插入图片描述

常用的哈希函数

  1. MD5
  2. SHA
  3. MAC
  4. CRC
  5. SM3(国产哈希算法)

对称加密(单密钥加密)

基本原理

加密:R=E(S,K_e)R为密文, S为明文,K_e为密钥,经过函数R后,明文变密文;
解密:S=D(R,K_e)S为密文, R为明文,K_e为密钥,经过函数S后,密文变明文;
在这里插入图片描述PS:加密(Encrypt)、解密(Decrypt)

特点

  1. 加密和解密都是用同一个秘钥
  2. 加密、解密效率高
  3. 秘钥被窃取,容易造成数据不安全

常用的对称加密算法

  1. DES
  2. 3-DES
  3. AES
  4. IDEA
  5. SMS4
  6. RC5
  7. TRIVIUM

DES

加密:

  1. 明文按64位分组,每组明文经初始排列
  2. 通过子密钥k1~k16进行16次乘积变换
  3. 通过最终排列(第3步)得到64位密文

解密:与加密运算一样,只是所取子密钥 的顺序相反,从k16到k1

如图:
在这里插入图片描述

非对称加密(公开密钥)

基本原理

公钥:可以告诉全网的密钥
私钥:只能自己知道的密钥
在这里插入图片描述

特点

  1. 用公钥加密用私钥解密
  2. 加密、解密相对于对称加密效率更低,但是比对称加密更安全。
  3. 公钥可能被中间人伪造,造成数据不安全。

常用的非对称加密技术

  1. RSA
  2. EIGamal
  3. ECC

RSA

算法:

  1. 选择两个大素数,pq,均应大于10^{100};
  2. 计算n = p * qz = (p-1)*(q-1);
  3. 选择一个与z互为质数的数,令其为d;
  4. 找到一个e使其满足{(e*d )}mod z =1;

对于报文m

加密需计算密文c=m^e*(mod\ n)
解密c需计算m=c^d*(mod\ n)

PS:实施加密需要e和n,实施解密需要d和n。因此,公开密钥由(e, n)构成,秘密密钥由(dn)或只是d构成。n限制明文块的大小。

举例:

  1. 取p = 7, q = 11
  2. n = p q = 77, z = (p-1)(q-1) = 60
  3. 取e = 43, d= 7 使得e*d mod z = 301 mod 60 = 1
  4. 得到公钥(e=43, n=77),密钥(d=7, n=77)
  5. 设我们的明文为m = 42
  6. 加密c = m^e mod n = 42^{43} mod 77 = 14
  7. 解密m = c^d mod n = 14^7 mod 77 = 42

对称+非对称

由于对称加密效率高,非对称加密效率低,通常将两者结合起来,即用非对称加密进行身份验证,传递对称密钥,利用对称加密进行数据传输。HTTPS就是一个例子

HTTPS加密

简单的HTTPS加密过程,忽略协议协商等具体细节:

  1. 客户端发起HTTPS连接
  2. 服务器返回包含公钥的数字证书
  3. 客户端生成对称密钥
  4. 客户端通过公钥加密,发送对称密钥
  5. 客户端与服务器进行密文通信

其中,

第2步保证了服务器公钥的真实性;

第4步为非对称加密;

第5步为对称加密;
在这里插入图片描述

全部评论 (0)

还没有任何评论哟~