加密算法 Md5 & Sha1

MD5加密

使用MD5CryptoServiceProvider类

复制代码
 1     public static string Md5(string str)
 2     {
 3         var buffer = Encoding.UTF8.GetBytes(str);
 4 
 5         MD5 md5 = new MD5CryptoServiceProvider();
 6         byte[] bytes = md5.ComputeHash(buffer);
 7 
 8         var sb = new StringBuilder();
 9         foreach (var t in bytes)
10         {
11             sb.Append(t.ToString("X2"));
12         }
13         return sb.ToString().ToLower();
14     }
复制代码

Sha1加密

SHA1,也是在System.Security.Cryptography程序集下提供的算法

复制代码
 1     /// <summary>
 2     /// Sha1加密
 3     /// </summary>
 4     /// <param name="str">要加密的字符串</param>
 5     /// <returns>加密后的十六进制的哈希散列(40个字符)</returns>
 6     public static string Sha1(string str)
 7     {
 8         var buffer = Encoding.UTF8.GetBytes(str);
 9 
10         var sha1 = SHA1.Create();
11         var bytes = sha1.ComputeHash(buffer);
12 
13         var stringBuilder = new StringBuilder();
14         foreach (var byt in bytes)
15         {
16             stringBuilder.Append(byt.ToString("X2"));
17         }
18 
19         return stringBuilder.ToString().ToLower();
20     }
复制代码

案例

 

以上,bytes转string,也可以使用 BitConverter.ToString(bytes)

但是需要额外替换其中的特殊字符“-”,

var encryptionStr = BitConverter.ToString(bytes).Replace("-", "").ToLower();

 

posted @   唐宋元明清2188  阅读(436)  评论(0编辑  收藏  举报
编辑推荐:
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
阅读排行:
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· 上周热点回顾(2.17-2.23)
· 如何使用 Uni-app 实现视频聊天(源码,支持安卓、iOS)
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
点击右上角即可分享
微信分享提示
哥伦布
01:11发布
哥伦布
01:11发布
8°
西北风
2级
空气质量
相对湿度
81%
今天
中雨
3°/15°
周四
大雨
2°/14°
周五
小雨
4°/10°