Produzione di valori hash per l'accesso ai dati o per la sicurezza. Un valore hash (o semplicemente hash), chiamato anche digest del messaggio, è un numero generato da una stringa di testo. L'hash è sostanzialmente più piccolo del testo stesso ed è generato da una formula in modo tale che è estremamente improbabile che un altro testo produca lo stesso valore hash.
Gli hash svolgono un ruolo nei sistemi di sicurezza in cui vengono utilizzati per garantire che i messaggi trasmessi non siano stati manomessi. Il mittente genera un hash del messaggio, lo crittografa e lo invia con il messaggio stesso. Il destinatario quindi decrittografa sia il messaggio che l'hash, produce un altro hash dal messaggio ricevuto e confronta i due hash. Se sono uguali, c'è un'alta probabilità che il messaggio sia stato trasmesso intatto.
L'hashing è anche un metodo comune per accedere ai record di dati. Considera, ad esempio, un elenco di nomi:
Per creare un indice, chiamato tabella hash, per questi record, applicare una formula a ciascun nome per produrre un valore numerico univoco. Quindi potresti ottenere qualcosa come:
Quindi per cercare il record contenente Sarah Jones, è sufficiente riapplicare la formula, che fornisce direttamente la chiave di indice al record. Ciò è molto più efficiente della ricerca in tutti i record finché non viene trovato il record corrispondente.