c#md5与SHA1验证函数
- /// <summary>
- /// MD5验证函数
- /// </summary>
- /// <param name="fileName">文件的路径</param>
- /// <param name="blockletter">返回的MD5值是否为大写</param>
- /// <returns></returns>
- public static string GetMD5HashFromFile(string fileName,bool blockletter)
- {
- try
- {
- FileStream file = new FileStream(fileName, FileMode.Open);
- System.Security.Cryptography.MD5 md5 = new System.Security.Cryptography.MD5CryptoServiceProvider();
- byte[] retVal = md5.ComputeHash(file);
- file.Close();
-
- StringBuilder sb = new StringBuilder();
- for (int i = 0; i < retVal.Length; i++)
- {
- if (blockletter)
- sb.Append(retVal[i].ToString("X2"));
- else
- sb.Append(retVal[i].ToString("x2"));
- }
- return sb.ToString();
- }
- catch (Exception ex)
- {
- return "文件读取错误";
- }
- }
- /// <summary>
- /// 计算SHA1值
- /// </summary>
- /// <param name="fileName">文件地址</param>
- /// <param name="blockletter">是否输出大写</param>
- /// <returns></returns>
- public static string GetSHA1HashFromFile(string fileName, bool blockletter)
- {
- var tragetFile = new System.IO.FileStream(fileName, System.IO.FileMode.Open);
- var sha1 = new System.Security.Cryptography.SHA1CryptoServiceProvider();
- byte[] hashbytes = sha1.ComputeHash(tragetFile);
- tragetFile.Close();
-
- System.Text.StringBuilder sb = new System.Text.StringBuilder();
- for (int i = 0; i < hashbytes.Length; i++)
- {
- if (blockletter) //判断输出大小写
- sb.Append(hashbytes[i].ToString("X2"));
- else
- sb.Append(hashbytes[i].ToString("x2"));
- }
- return sb.ToString();
- }
- 随机文章
- 热门文章
- 热评文章
- 用PHP发送POST请求
- 在树莓派/linux上使用阿里云DNS解析作为DDNS使用
- C#图像处理(各种旋转、改变大小、柔化、锐化、雾化、底片、浮雕、黑白、滤镜效果)
- C#中的MessageBox消息对话框
- 永恒之蓝病毒是什么 怎么防范ONION勒索软件
- C#实现邮件发送的功能
- 开关电源拓扑结构概述(降压,升压,反激、正激)
- C#全局监听Windows键盘事件