常见的加密方式总结

  • 格式:pdf
  • 大小:146.50 KB
  • 文档页数:2

常见的加密⽅式总结

对称加密

DES

DES加密算法是⼀种分组密码,以64位为分组对数据加密,它的密钥长度是56位,加密解密⽤同⼀算法,加密速度快,但是容易破解安全

性低。

3DES(Triple DES)

是基于DES的对称算法,对⼀块数据⽤三个不同的密钥进⾏三次加密,强度更⾼,加强版DES。

(DES算法⽐较简单,容易破解已不建议使⽤)

AES(微信⽤的就是这种加密⽅式)

秘钥长度最长256bit,加解密速度快.AES标准⽤来替代原先的DES

优点:对称加密的优点是加解密速度快

缺点:发送⽅和接收⽅都需要知道唯⼀的秘钥,秘钥容易泄露

⾮对称加密

RSA(最常见)

对称加密,私钥加密公钥解密或相反,私钥可以推导出公钥反之不⾏RSA加解密速度慢不适合频繁和⼤数据的加解密

还有⼀些其它场景常⽤的⾮对称加密

ECC椭圆曲线加密(区块链钱包中最常使⽤)

DSA

带数字签名的算法

优点:不需要泄露私钥,安全性⾼

缺点:加解密计算量增⼤,速度慢

使⽤对称加密时需要将秘钥公布给对⽅,这样就存在安全隐患。⽽使⽤⾮对称加密则很消耗性能,速度慢,请求频繁和数据量⼤的场景不适

合。

如何综合两者长处呢?

我们可以结合AES 和 RSA⼀起使⽤,当需要公布AES秘钥时使⽤需求⽅的公钥将AES秘钥加密,解密报⽂时使⽤解密出来的AES秘钥解

密,这样就能综合两种加密⽅式的优势。

B需要保证获取AES密码的是A,所以加密的必须是A的公钥,这样就只有A可以解密获得AES密码,其他⼈即使获取到了带AES秘钥的密

⽂,因为缺少私钥也没有办法获取到密码 散列算法(hash算法)

md5(最常使⽤)

sha1,sha256(sha算法不同的版本)

SHA主要适⽤于数字签名标准⾥⾯定义的数字签名算法。是⼀种⽐MD5的安全性强的算法

hash算法因为其具有不可逆性,且输出长度固定。所以主要⽤于做摘要场景,也就是数字签名。

虽然都已经被破解

但是我们可以采⽤多遍⽆规则hash⼀样很难破解

或者在保存登陆密码的场景可以加盐值再hash

其它

base64

只是⼀种编码格式,主要⽤于编码http⽆法传输的数据格式。将⽆法传输的数据格式编码为base64格式的字符串传输。⽐如使⽤⽂本传输图

aes+rsa使⽤

⾮对称加密