Un file crittografato di grandi dimensioni è più sicuro di uno piccolo?

3

Crittografare un file di grandi dimensioni e dover successivamente decrittografare un file di grandi dimensioni lo rende più sicuro di uno piccolo quando si tenta di forzarlo?

Se devi forzare la forza bruta su un file da 25 GB e un file da 250 MB devi provare a decrittografare il tutto per controllare una password o c'è qualche scorciatoia che consente agli attacchi di forza bruta di controllare rapidamente se la password è valido o no?

Se è più lento, è molto più lento?

    
posta Crizly 07.08.2015 - 14:33
fonte

1 risposta

7

Anche se questo dipende ovviamente dal metodo di crittografia, la solita risposta breve è: no, rendere il file più grande non rende la ricerca esaustiva più difficile.

In generale, qualcuno cerca una ricerca esaustiva su qualche chiave perché è interessato ai contenuti del file, il che significa che ha context : conosce già il tipo di dati che troverà. Decifrare solo l'inizio del file è sufficiente per sapere se ha qualcosa che "ha senso" (ad esempio un'intestazione riconoscibile per un file video, un'immagine, un documento XML ...) o una spazzatura casuale. Questo tipo di test non deve essere molto severo: tutto quello di cui ha bisogno l'hacker è di poter rifiutare, diciamo il 99% delle potenziali chiavi, e quindi provare a decifrare un po 'di più del file nell'1% dei casi in cui sono necessarie più indagini necessario.

Ciò presuppone che il metodo di crittografia funzioni in modo "streamed", dove il file può essere decifrato come i flussi di dati, che è il modo in cui la maggior parte dei sistemi di crittografia funziona in pratica, perché è una caratteristica molto desiderabile, specialmente durante la gestione di file enormi.

Ovviamente , il modo giusto per sconfiggere la ricerca esaustiva è utilizzare una chiave abbastanza casuale in primo luogo. Una chiave a 128 bit, generata con un PRNG protetto crittograficamente , vanificherà qualsiasi ricerca esauriente, indipendentemente dalle dimensioni del file crittografato. Quando un tentativo di cracking è così lento che in pratica non funziona, non può essere reso "più lento" in alcun modo significativo: non funziona, e questa è la fine.

Se non riesci a ottenere una chiave strong, ad es. Poiché si sta eseguendo la crittografia basata su password e le password sono deboli (quasi per definizione), in effetti si desidera rendere ogni tentativo di decrittografia pesante e lento, in modo da provare a migliorare la propria situazione di sicurezza. Ma il metodo giusto è farlo quando si trasforma la password in una chiave (qualcosa chiamato hashing password ), non quando si applica la chiave per crittografare i dati effettivi.

    
risposta data 07.08.2015 - 14:58
fonte

Leggi altre domande sui tag