MD5 (Message Digest Algorithm 5) este o funcție hash criptografică care transformă orice intrare (text, fișier) într-un șir hexazecimal de 32 de caractere de lungime fixă, numit hash sau amprenta digitală. Proprietatea fundamentală a MD5 este că aceeași intrare produce întotdeauna același hash, dar schimbarea unui singur caracter din intrare produce un hash complet diferit.
MD5 este folosit în multiple aplicații: verificarea integrității fișierelor descărcate (dacă hash-ul fișierului descărcat coincide cu cel publicat de autor, fișierul este intact și nemodificat), stocarea parolelor în baze de date (deși pentru securitate maximă se recomandă algoritmi mai moderni precum bcrypt sau SHA-256), generarea de token-uri unice pentru sesiuni web și crearea de cache keys în aplicații web.
Este important de menționat că MD5 nu mai este considerat sigur pentru aplicații criptografice critice, deoarece au fost demonstrate atacuri de tip „collision" (două intrări diferite care produc același hash). Pentru stocarea parolelor sau semnăturile digitale, se recomandă algoritmi mai moderni (SHA-256, bcrypt). Pentru verificarea integrității fișierelor neconfidențiale, MD5 rămâne practic și eficient.