对称加密 & 非对称加密
Posted better_hui
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了对称加密 & 非对称加密相关的知识,希望对你有一定的参考价值。
目录
一、加解密算法
算法类型 | 特点 | 优势 | 缺陷 | 代表算法 |
---|---|---|---|---|
对称加密 | 加解密秘钥相同,速度快 | 计算效率高,加密强度高 | 秘钥容易泄露 | 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加密原理
传送门:https://blog.csdn.net/u012391423/article/details/116542722
十、EIGamal加密原理
十一、椭圆曲线ECC加密原理
以上是关于对称加密 & 非对称加密的主要内容,如果未能解决你的问题,请参考以下文章
重识Nginx - 13 对称加密与非对称加密的应用场景 & Nginx性能指标