加密中间件对比

MD5

md5 不可逆的原因是由于它是一种散列函数,使用的是 hash(摘要)算法;

不过基于键值对的字典关系原理,有一些收集海量 md5 信息与摘要的数据库(如彩虹表),采用枚举法能够从 md5 值找到原文本信息。

解决方法:MD5加盐(随机盐)

每次保存密码到数据库时,都生成一个随机 16 位数字,将这 16 位数字和密码相加再求 md5 摘要,然后在摘要中再将这 16 位数字按规则掺入形成一个 48 位的字符串。

在验证密码时再从 48 位字符串中按规则提取 16 位数字,和用户输入的密码相加再 md5。按照这种方法形成的结果肯定是不可直接反查的,且同一个密码每次保存时形成的摘要也都是不同的。

具体实现:MD5加密+加盐

 

对称加密 和 非对称加密 算法

对称加密:DES,AES,3DES,IDEA等

加密和解密使用同一个秘钥。

非对称加密:RSA,ECC等

采用两个密钥,公钥加密后只能用私钥解开,反过来也一样。

区别:

对称加密速度快。

非对称加密安全性能高。

所以一般使用非对称加密传递对称加密的密钥,然后使用对称加密来加密传递的数据。

 

AES(典型的对称加密算法):

DES 算法的替代者。

AES 支持三种长度的密钥:128位,192位,256位;

AES256 安全性最高,AES128 性能最高,本质原因是它们的加密处理轮数不同。

详情:什么是AES算法?

 

Encrypt 加解密:

EncryptionDLL.EncryptionService.EncryptString("周溪童");

EncryptionDLL.EncryptionService.DecryptString("2B97DE2B58ED4000");

 

数字证书:

防止中间人攻击

 

加密技术详情:C#.Net中的加密解密(AES、DES、RSA、MD5)、数字证书、HTTPS

 

posted @ 2023-03-09 11:01  kueizheng  阅读(82)  评论(0编辑  收藏  举报