Giriş
ComputeHash metodu - Byte []
Şöyle yaparız
ComputeHash metodu - Stream
MD5 1991 yılında ortaya çıktı. 2004 yılında çakışmalara karşı güvenli olmadığı gösterildi. O zamandan beri MD5 yerine SHA ailesine ait bir algoritmanın kullanılması öneriliyor.
MD5 128 bit hash çıktısı verir. Dolayısıyla kırılabilmesi için 2^127 denemenin yapılması gerekirdi ancak bazı özel durumlarda 2^47 denemede de kırılabildiği için güvenli sayılmıyor. Birthday attack ile ortalamada 2^64 denemede kırılıyor. MD5 halen sertifikalarda kullanılıyor ancak günleri sayılı.
ComputeHash metodu - Byte []
Şöyle yaparız
byte[] input = ...
byte[] hash = MD5.Create().ComputeHash(input);
String şöyle hash haline getirir.string input = ...
byte[] hash = md5Hash.ComputeHash(Encoding.UTF8.GetBytes(input));
ComputeHash metodu - Stream
Şöyle yaparız
using (var md5 = MD5.Create())
{
using (var stream = File.OpenRead(filePath))
{
byte[] hash = md5.ComputeHash(stream);
}
}
Create metodu
Create metodu aslında MD5CryptoServiceProvider sınıfı döner. Sınıfı her zaman using ile kullanırız.
using (MD5 md5Hash = MD5.Create())
{
...
}
Hiç yorum yok:
Yorum Gönder