È insicuro usare un IV basato sulla chiave?

0

Se nutro AES e IV generato da MD5 utilizzando la chiave, causerà un rischio per la sicurezza? Capisco che MD5 può essere rotto in un tempo molto breve, ma avrà l'effetto dell'integrità del codice? L'unica debolezza che vedo è che l'hash può essere usato per trovare la chiave; ma non è fondamentalmente impossibile trovare la IV di un codice usando solo il testo cifrato?

    
posta Brian 17.09.2016 - 04:12
fonte

1 risposta

3

In breve, sì. L'utilizzo di un vettore di inizializzazione derivato dalla chiave rappresenta un rischio per la sicurezza, indipendentemente dall'algoritmo di hash che si utilizza. Devi sempre usare un generatore di numeri casuali protetto da crittografia per creare IV.

Un grosso problema nel derivare un IV usando un algoritmo di hashing è che l'hash sarà sempre lo stesso per ogni chiave data.

Un IV non deve mai essere usato più volte con la stessa chiave. Il punto di un IV è quello di fornire unicità a un messaggio e impedire che venga crittografato nello stesso testo cifrato più volte. Qui è un post che fornisce un bell'esempio di come un utente malintenzionato potrebbe trarre vantaggio di questo.

Gli IV vengono inviati insieme al messaggio crittografato in chiaro. Questo va bene, perché non dovrebbero essere un segreto. Il ricevitore ha bisogno che l'IV decodifichi correttamente il messaggio. L'invio della chiave hash come IV significa che chiunque riceve il tuo messaggio vedrà la chiave con hash. È quindi molto possibile per un utente malintenzionato scoprire la chiave tramite una tabella arcobaleno o addirittura una forza bruta.

    
risposta data 17.09.2016 - 05:01
fonte

Leggi altre domande sui tag