目前校验文件使用最多的是MD值和SHA值,不外乎有些使用CRC,前段时间微软发布了VisualStudio正式版,win镜像,微软官方给出的校验方式都是校验文件的SHA值。下面详细介绍C#之文件校验工具的开发及问题,需要的朋友可以参考下
.加密算法的熟悉
目前校验文件使用最多的是MD值和SHA值,不外乎有些使用CRC,前段时间微软发布了VisualStudio正式版,win镜像,微软官方给出的校验方式都是校验文件的SHA值。
C#进行MD加密与SHA加密的实现总结在这里
.文件的加密计算
知道了如何进行普通字符串的加密还不够,我们要校验的文件的MD值或SHA值,接下来熟悉如何获取文件的MD值和SHA值
获取文件的MD值
- public static string GetFileMD(string filePath) {
- MDCryptoServiceProvider md = new MDCryptoServiceProvider(); FileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.Read, FileShare.Read);
- byte[] result = md.ComputeHash(fs); md.Clear();
- StringBuilder sb = new StringBuilder(); for (int i = ; i < result.Length; i++)
- { sb.Append(result[i].ToString("X"));
- } return sb.ToString();
- }
获取文件的SHA值
- public static string GetFileSHA(string filePath) {
- SHA sha = new SHACryptoServiceProvider(); FileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.Read, FileShare.Read);










