In che modo l'hash garantisce l'integrità dei dati? [duplicare]

1

Capisco cos'è un hash, in pratica calcoliamo un hash e lo aggiungiamo al messaggio e lo inviamo al destinatario. Se qualcuno altera il messaggio, il destinatario lo saprà perché ci sarebbe un diverso valore di hash.

Poiché gli algoritmi di hash sono noti come MD5, SHA1, se c'è un uomo nell'attacco centrale, può quindi modificare il messaggio e rigenerare l'hash in base al messaggio alterato e inviarlo al destinatario? Il ricevitore non saprà che si tratta di un messaggio alterato calcolando l'hash, corretto?

    
posta xvi_16 06.04.2015 - 17:16
fonte

2 risposte

4

Sì, è corretto. Ecco perché se stai utilizzando un hash per l'integrità dei dati, devi consegnare l'hash con mezzi separati (ad esempio postare l'hash con il tuo account Twitter). Per aggirare questo problema nelle e-mail, invece di usare un hash puoi usare crittografia a chiave pubblica che consente al destinatario ( e chiunque altro) per verificare la firma usando la tua chiave pubblica, ma la firma non può essere creata senza la tua chiave privata. Questo è quello che usi PGP .

    
risposta data 06.04.2015 - 17:21
fonte
1

Per espandere la risposta di @ aron-foster, il modo in cui questo viene fatto nella crittografia a chiave pubblica consiste nel cancellare prima il messaggio e quindi crittografare l'hash utilizzando la chiave privata del mittente.

Nella crittografia a chiave pubblica, come probabilmente saprai, i dati crittografati con una delle chiavi possono essere decifrati solo con la chiave corrispondente. Ciò significa che quando l'hash è crittografato con la chiave privata, la chiave pubblica del mittente può quindi essere utilizzata per decrittografarlo, verificando così la chiave.

Tuttavia, anche con hash ben noti (diciamo, un set di hash "noto bene" usato per l'integrità del file), il problema che si pone è un potenziale problema. Cosa succede se un utente malintenzionato non solo modifica il file ma scopre una collisione hash che gli consente di manipolare i dati protetti conservando lo stesso stesso hash?

Questo è il motivo per cui gli strumenti di integrità dei file (anziché gli strumenti di convalida dell'installazione come RPM e APT) registrano gli hash multipli per gli oggetti tracciati. In questo modo, anche se viene rilevata una collisione hash, è fuori di dubbio (oggi) che è possibile modificare un file e mantenere più di un hash invariato.

    
risposta data 06.04.2015 - 17:29
fonte

Leggi altre domande sui tag