MD5 (Message-Digest 5), bir veriyi nitelendirmek amacıyla 128 bit'lik benzersiz bir özet üreten bir hashing fonksiyonudur (bkz: Hashing Nedir?). Şifreleme amacıyla kullanılmaz, bu anlamda güvenli olmak gibi bir iddiası da yoktur.
İnternette ve programlama dillerinin framework'leri içerisinde ücretsiz olarak kullanabileceğiniz MD5 encryption ve decryption araçları mevcuttur.
Örneğin "reitix" kelimesini MD5 ile encrypt edecek olursak MD5 karlışığı b1b4208131d4a7a458a6b1a5c45f7668 olur. Encrypt ettiğimiz veriyi tekrar decypt edecek olursak da yine reitix ifadesine ulaşabiliriz.
MD5, girilen veri ne kadar büyük olursa olsun her zaman 128 bit'lik bir veri üretir ve bu veriler decrypt etmeye de (brute force) gayet açıktır. Bu nedenle kriptografik çalışmalarda kullanmak yerine checksum işlemlerinde kullanımı tavsiye edilir.
Önceki bazı diğer benzer yazılarım için;
bkz: Programlama Dillerinde Kalıtım Nedir?
bkz: Programlama dillerinde hata ayıklama (debugging) nasıl yapılır?
bkz: Programlama dillerinde while (true) ifadesi ne işe yarar?
bkz: Programlama dillerinde if ile switch case arasındaki fark nedir?
bkz: C# ile string'in karakterlerini rastgele değiştirmek ve sıralamak
bkz: Visual Studio'da Kullanılan C# Versiyonunu Görmek ve Değiştirmek