.NET 4.x Проверка целостности файла (Md5) - C#
Формулировка задачи:
Всем доброго времени суток.
Собственно в C# Я еще не селен,только начинающий...
Пишу программу одну,мне нужно чтобы была проверка файла на целостность по md5 и чтобы он брал сам хеш сумму md5 с сайта(фтп) и сверял ее с хешем от файла,возможно такое реализовать?
Юзал гугл нашел ну это не то,что мне нужно было,искал тут тоже такой же результат...
Надеюсь вы мне поможете.
Решение задачи: «.NET 4.x Проверка целостности файла (Md5)»
textual
Листинг программы
public class Md5Hash { public static Process[] procs; public static string source = "dsetup.dll"; public static void Md5Protect() { using (MD5 md5Hash = MD5.Create()) { string hash = GetMd5Hash(md5Hash, source); string has2 = ("61af51bddf6fee4dd80920a4466811be"); bool hash3 = VerifyMd5Hash(md5Hash, source, has2); if (VerifyMd5Hash(md5Hash, source, has2)) { // MessageBox.Show("Совпадает."); } else { MessageBox.Show("Клиент повреждён, проведите полную проверку апдейтером."); Application.Exit(); } } } static string GetMd5Hash(MD5 md5Hash, string input) { FileStream file = new FileStream(source, FileMode.Open); MD5 md5 = new MD5CryptoServiceProvider(); byte[] retVal = md5.ComputeHash(file); file.Close(); StringBuilder sb = new StringBuilder(); for (int i = 0; i < retVal.Length; i++) { sb.Append(retVal[i].ToString("x2")); } return sb.ToString(); } static bool VerifyMd5Hash(MD5 md5Hash, string input, string hash) { string hashOfInput = GetMd5Hash(md5Hash, input); StringComparer comparer = StringComparer.OrdinalIgnoreCase; if (0 == comparer.Compare(hashOfInput, hash)) { return true; } else { return false; } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д