Hash Fonksiyonları, herhangi bir bilgi bloğunun sabit uzunlukta bit dizisini, yani mesaj özeti (message digest) olarak bilinen bir değeri hesaplar. Mesaj özeti fonksiyonları, bir dosyadaki bilgileri tek bir sabit uzunlukta numaraya dönüştürür, genellikle 128 ile 256 bit arasında değişir. Herhangi bir bit değiştiğinde, tüm çıkış bitlerinin değişme olasılığı %50'dir. Verilen bir girdi dosyası ve karşılık gelen mesaj özeti ile, aynı mesaj özeti değerine sahip başka bir dosya bulmak neredeyse imkansızdır.
MD2, MD4, MD5 ve MD6, dijital imza uygulamalarında belgeleri güvenli bir şekilde sıkıştırmak için kullanılan mesaj özeti algoritmalarıdır. Algoritmalar değişken uzunlukta olabilir, ancak sonuçta elde edilen mesaj özeti her zaman 128 bittir.
MD5 algoritması, değişken uzunlukta bir mesajı alır ve 128-bit (16-byte) bir parmak izi veya mesaj özeti üretir. MD5 algoritması, dijital imza uygulamaları, dosya bütünlüğü kontrolü ve şifre saklama gibi birçok kriptografik uygulamada kullanılır.