常用加密算法

常用加密算法,第1张

概述下面的内容是在网上看到的博客中摘取的部分。 原作者: (colife,https://www.cnblogs.com/colife/p/5566789.html) (麦田里的守望者-Rye,https://blog.csdn.net/wangjiang_qianmo/article/details/88073848 )   常见的加密算法可以分成三类,对称加密算法,非对称加密算法和Hash算法。 @H_419_2@

下面的内容是在网上看到的博客中摘取的部分。

原作者:

(colife,https://www.cnblogs.com/colife/p/5566789.HTML)

(麦田里的守望者-Rye,https://blog.csdn.net/wangjiang_qianmo/article/details/88073848 )

 

常见的加密算法可以分成三类,对称加密算法,非对称加密算法和Hash算法。

对称加密

指加密和解密使用相同密钥的加密算法。

对称加密算法的安全性取决于加密密钥的保存情况。

优点:加解密的高速度和使用长密钥时的难破解性。

缺点:密匙分发困难

常见的对称加密算法:DES、3DES、DESX、Blowfish、IDEA、RC4、RC5、RC6和AES

非对称加密

指加密和解密使用不同密钥的加密算法,也称为公私钥加密,私匙解密公匙解密。

优点:由于公钥是可以公开的,用户只要保管好自己的私钥即可,因此加密密钥的分发将变得十分简单。

缺点:解密速度远小于对称加密,极端情况下可能比非对称加密慢一千倍。

常见的非对称加密算法:RSA、ECC(移动设备用)、DiffIE-Hellman、El Gamal、DSA(数字签名用)

Hash算法

    Hash算法特别的地方在于它是一种单向算法,用户可以通过Hash算法对目标信息生成一段特定长度的唯一的Hash值,却不能通过这个Hash值重新获得目标信息。因此Hash算法常用在不可还原的密码存储、信息完整性校验等。

常见的Hash算法:MD2、MD4、MD5、HAVAL、SHA、SHA-1、HMAC、HMAC-MD5、HMAC-SHA1

 

下面是对客户端与服务端通信数据加密比较通用的方案:

客户端生成AES密钥,并保存AES密钥@H_404_64@ 客户端用AES密钥对请求传输数据进行加密@H_404_64@ 客户端使用RSA公钥对AES密钥加密,然后把值放到自定义的一个请求头中@H_404_64@ 客户端向服务端发起请求@H_404_64@ 服务端拿到自定义的请求头值,然后使用RSA私钥解密,拿到AES密钥@H_404_64@ 服务端使用AES密钥对请求数据解密@H_404_64@ 服务端对响应数据使用AES密钥加密@H_404_64@ 服务端向客户端发出响应@H_404_64@ 客户端拿到服务端加密数据,并使用之前保存的AES密钥解密@H_404_64@

用户密码储存:前端Js将用户表单中的密码使用MD5加密后在发送到后端,后端将MD5值存入数据库。

@H_419_2@ 总结

以上是内存溢出为你收集整理的常用加密算法全部内容,希望文章能够帮你解决常用加密算法所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1088388.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存