常见加密算法 「asp.net core 系列」12 数据加密算法( 三 )

因为RSA的特殊性,需要预先设置好公钥和私钥 。C# 支持多种方式导入密钥,这里就不做过多介绍了 。

常见加密算法 「asp.net core 系列」12 数据加密算法

文章插图
 
3. 信息摘要算法这种算法严格意义上并不是加密算法,因为它完全不可逆 。也就是说,一旦进行使用该类型算法加密后,无法解密还原出数据 。当然了,也正是因为这种特性常常被用来做密码的保存 。因为这样可以避免某些人拿到数据库与代码后,可以简单反推出用户的密码 。
3.1 MD5算法最常用的信息摘要算法就是MD5 加密算法,MD5信息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致 。
【常见加密算法 「asp.net core 系列」12 数据加密算法】原理不解释,我们看下如何实现,照例现在Security下创建MD5Helper:
namespace Utils.Security{    public static class Md5Helper  {          }}具体实现:
using System.Security.Cryptography;using System.Text;?namespace Utils.Security{    public static class Md5Helper  {        private static MD5 Hanlder { get; } = new MD5CryptoServiceProvider();?        public static string GetMd5Str(string source)      {            var data = https://www.isolves.com/it/cxkf/cxy/2020-06-22/Encoding.UTF8.GetBytes(source); var security = Hanlder.ComputeHash(data); var sb = new StringBuilder(); foreach (var b in security) { sb.Append(b.ToString("X2")); }? return sb.ToString(); } }}4 总结这一篇简单介绍了四种常用的加密算法的实现,当然最常用的就是 MD5,因为这个是大多数系统用来做密码保存的加密算法 。




推荐阅读