|
C# - MD5-Hashwert einer Datei berechnen |
|
|
|
|
Geschrieben von: Jens
|
|
Donnerstag, den 15. März 2012 um 08:15 Uhr |
///
/// Berechnet den MD5-Hash der angegebenen Datei
///
/// Datei deren MD5-Hashwert berechnet werden soll
/// MD5-Hashwert der Datei
public static string CalculateMD5HashvalueFromFile(string path)
{
string hash = string.Empty;
if (!File.Exists(path))
throw new ApplicationException(String.Format("Datei \"{0}\" nicht gefunden!"));
try
{
using (System.IO.FileStream FileCheck = System.IO.File.OpenRead(path))
{
// MD5-Hash aus dem Byte-Array berechnen
System.Security.Cryptography.MD5 md5 = new System.Security.Cryptography.MD5CryptoServiceProvider();
byte[] md5Hash = md5.ComputeHash(FileCheck);
FileCheck.Dispose();
hash = BitConverter.ToString(md5Hash);
}
}
catch (Exception ex)
{
throw new ApplicationException("Fehler beim Berechnen des MD5-Hashes!", ex);
}
return hash.Replace("-","").ToLower();
}
///
/// Prüft ob der übergebene MD5-Haswert dem MD5-Haswert der angegeben Datei entspricht
///
/// Datei deren MD5-Haswert verglichen werden soll
/// MD5-Haswert, der geprüft werden soll
/// True: Hashwert stimmt überein / False: Hashwerte unterscheiden sich
public static bool CompareMD5Hashvalue(string path, string md5)
{
string calculated = MD5Hashing.CalculateMD5HashvalueFromFile(path);
if (calculated == md5)
return true;
return false;
}
|
|
Zuletzt aktualisiert am Donnerstag, den 15. März 2012 um 08:15 Uhr |