C#简单的MD5加密
MD5(Message Digest Algorithm 5)是一种常见的哈希函数,用于将任意长度的输入数据通过计算生成固定长度的128位哈希值。MD5 哈希值通常以十六进制字符串的形式表示,常被用于对密码、消息等敏感信息进行加密或摘要处理。
在编程中,可以使用现有的加密库或工具来对数据进行 MD5 加密。在先前的代码示例中,展示了如何使用 C# 中的 MD5
类和相关的编码方法来计算字符串的 MD5 哈希值,并将其表示为十六进制的字符串。
需要注意的是,尽管 MD5 曾经被广泛应用于加密和校验领域,但由于其存在一些安全性漏洞,不再被建议用于加密密码等安全敏感信息。替代方案包括 SHA-256、SHA-512 等更安全的哈希算法。
一.创建生成MD5的方法
代码如下:
1 2 3 4 5 6 7 8 9 | /// <summary> /// 密码生成Md5 /// </summary> /// <param name="md5"></param> /// <returns></returns> public string GetMd5( string ? md5) { return string .Join( "" , MD5.Create().ComputeHash(Encoding.UTF8.GetBytes(md5)).Select(m => m.ToString( "X2" ))); } |
代码详细讲解:
这段代码的作用是计算给定字符串的 MD5 哈希值。让我来逐步解释一下这段代码:
-
Encoding.UTF8.GetBytes(md5)
:首先,使用 UTF-8 编码将字符串md5
转换成字节数组。 -
MD5.Create().ComputeHash(...)
:然后,创建一个 MD5 实例并对该字节数组进行哈希计算,得到对应的 MD5 哈希值的字节数组。 -
.Select(x => x.ToString("X2"))
:接下来,使用 LINQ 的Select
方法将每个字节转换为其对应的十六进制表示,并存储为一个字符串数组。 -
string.Join("", ...)
:最后,使用空字符串连接字符串数组中的各个十六进制值,得到最终的 MD5 哈希值的字符串表示。
总的来说,这段代码将输入的字符串经过 MD5 哈希计算后,以十六进制格式输出哈希值的字符串表示。
二.代码运用到添加和修改密码,登录用户中
代码如下:
1 | list.UserPassword== GetMd5(UserPassword) |
直接在登录前调用Md5方法
到此MD5结束
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?