MD5加密字符串和文件的算法

本文介绍了MD5算法的基本概念,强调其作为散列算法而非加密算法的角色,并提供了使用C#实现字符串及文件MD5散列值的具体代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MD5算法

是一种散列(hash)算法,不是一种加密算法。主要是验明真身字符串与文件均可。

介绍工具:CaicMD5

1、MD5是不可逆的,MD5长度一般是32位的16进制数字符串

//计算字符串的Md5

        public static stringEncryptString(string str)

        {

            //1.创建一个Md5对象

            MD5md5Obj = MD5.Create();

            //1.1把字符串转换为一个byte数组

            byte[]byts = System.Text.Encoding.Default.GetBytes(str);

            //2.使用md5进行字符串处理

            byte[]md5Byts = md5Obj.ComputeHash(byts);

            //3.释放资源

            md5Obj.Clear();//类似于Dispose();

            md5Obj.Dispose();

            StringBuildersb = new StringBuilder();

            //4.返回处理以后的结果

            for(int i = 0; i < md5Byts.Length; i++)

            {

                sb.Append(md5Byts[i].ToString("x2"));

            }

            returnsb.ToString();

        }

//文件MD5加密

public static string EncryptFile(stringpath)

        {

            using(FileStream fs = File.Open(path,FileMode.Open))

            {

                using(MD5 md5Obj = MD5.Create())

                {

                    byte[]md5Byts = md5Obj.ComputeHash(fs);

                    StringBuildersb = new StringBuilder();

                    for(int i = 0; i < md5Byts.Length; i++)

                    {

                       sb.Append(md5Byts[i].ToString("x2"));

                    }

                    returnsb.ToString();

                }

            }

        }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值