Funzione matematica capace di produrre una stringa (sequenza di caratteri) di lunghezza fissa partendo da qualunque file o testo.
Ogni minima modifica del file o del testo produrrà una diversa stringa in uscita. La caratteristica fondamentale di queste funzioni è la loro difficile invertibilità: in questo modo, dato un valore di hash, è molto difficile risalire al messaggio che l'ha generato. Come le impronte dei polpastrelli, un’impronta hash è univoca e costituisce una prova dell’integrità e dell’autenticità del file.