L'ho sempre sentito
A change in just one bit of the original text shall change half of the bits of its hash.
Penso che questa proprietà sia chiamata proprietà di diffusione .
Tuttavia, mi chiedo perché la proprietà di diffusione sia così importante nelle funzioni di hashing.
Capisco che per gli algoritmi di crittografia questa sia una proprietà necessaria. Senza di esso, potrebbe essere eseguito un attacco basato su statistiche linguistiche.
Le funzioni di hashing tuttavia sono a senso unico, il che significa che non è possibile ottenere il testo originale dall'hash. Perché le funzioni hash devono mostrare la proprietà di diffusione allora?
Aggiornamento 1: Dato che potresti usare le funzioni di hashing per nascondere informazioni o per assicurare l'integrità di un documento, penso che sia una buona idea separare entrambi gli aspetti.
Se lo stiamo usando per nascondere informazioni come password questa proprietà è necessaria. Guarda la risposta di Lucas Kauffman .
Ma se si utilizzano le funzioni hash per garantire l'integrità di un documento. È ancora una proprietà necessaria allora?