对称加密 & 非对称加密

目录

一、加解密算法

二、算法体系

三、对称加密

四、非对称加密

五、混合加密机制

六、DES加密原理

七、3DES加密原理

八、AES加密原理

九、RSA加密原理

十、EIGamal加密原理

十一、椭圆曲线ECC加密原理


 

 

一、加解密算法

 

算法类型 特点              优势              缺陷         代表算法              
对称加密 加解密秘钥相同,速度快 计算效率高,加密强度高 秘钥容易泄露 DES、3DES、AES、IDEA 
非对称加密     分公钥和私钥                无需提前共享私钥 计算效率低     RSA、EIGamal、椭圆曲线系列

 

 


二、算法体系

现代加密算法的组件包括:加密算法、加密秘钥、解密秘钥

- 加密算法一般是固定不变,是公开的
- 加解密的秘钥往往每次都不同,需要保护起来。
- 加密过程,通过加密算法和加密秘钥,对明文进行加密,得到密文
- 解密过程,通过解密算法和解密秘钥,对密文进行解密,得到明文
- 根据加解密秘钥是否相同,又分为对称加密和非对称加密。两种模式适合不同的需求场合,也可以混合使用,形成合婚加密机制。

 

三、对称加密

顾名思义,加解密的秘钥是相同的。

优点:计算效率高(速度快,占用空间小),加密强度高。

缺点:提前共享秘钥,分发秘钥有安全风险

从实现原理上分为:分组密码和序列密码两种。前者是将明文切分为定长数据块作为加密单位,应用比较广泛。后者是针对一个字节进行加密,且密码不断变化。

代表的算法:DES、3DES、AES、IDEA等

  • - DES (data encryption standard) , 经典的分组加密算法,采用FIPS,将64位明文加密为64位的密文。其秘钥长度未56位 + 8位校验。
  • - 3DES , 三重DES操作:加密 ->解密 -> 加密 , 处理过程和加密强度优于DES
  • - AES (Advanced Encryption standard) , 也是分组算法,分组长度未128/192/256三种。其优势是处理速度快,目前尚无有效的破解手段

应用:适用于大量数据的加解密;不适用于签名的场景

 

四、非对称加密

非对称加密,解决了对称加密提前分发秘钥的问题。加密秘钥和解密秘钥是不通的,分别称为公钥和私钥。

优点:公私钥分开,不安全通道也可以使用

缺点:加解密速度慢,比对称加密慢2-3个数量接。计算效率相对较低

非对称加密算法往往基于数学问题来保障,目前主要有大数质因子分解、离散对数、椭圆曲线等

代表算法:RSA、EIGamal、椭圆曲线ECC系列算法

  • - RSA , 经典的公钥算法,利用对大数质因子分解困难的特性
  • - EIGamal,利用了模运算下求离散对数困难的特性
  • - 椭圆曲线ECC , 基于对椭圆曲线上特定点进行特殊乘法逆运算困难的特性

应用:一般适用于签名场景或秘钥协商,不适用于大数据加解密

 

五、混合加密机制

先用非对称加密算法,协商一对对称加密的临时秘钥,然后双方再使用对称加密对传递的大量数据加解密处理

典型场景是HTTPS机制。HTTPS 利用了Transport Layer Security / Secure Socket Layer (TLS /SSL)来实现可靠的传输。

  • - 建立安全连接的步骤:
  • - 客户端浏览器发送消息到服务器,包括随机数R1,支持的加密算法类型、协议版本、压缩算法等,该过程为明文
  • - 服务器返回信息,包括随机数R2、选定的加密算法类型、协议版本、及服务器整数,该过程为明文
  • - 浏览器检查该网站公钥的整数,该整数由CA来签发背书,如被修改或攻击,很容易验证出来
  • - 用证书中的公钥加密随机数R3,发送给服务器。双方基于R1、R2、R3,生成对称加密秘钥。后续通信通过对称加密进行保护。

 

------------------------------------

以下内容持续更新中

 

六、DES加密原理

七、3DES加密原理

八、AES加密原理

九、RSA加密原理

十、EIGamal加密原理

十一、椭圆曲线ECC加密原理

你可能感兴趣的:(密码学,密码学,算法,安全)