Rilevamento dello stato finale del processo di decrittografia con chiave sconosciuta

0

Nota: questa domanda nasce esclusivamente da un interesse teorico nella ricerca sulla sicurezza.

Spesso nella fiction popolare vediamo che gli hacker dei cappelli bianchi decifrano le informazioni segrete in pochi secondi. Mentre questo ovviamente non è probabile nel mondo reale, mi ha fatto pensare a come si potrebbe effettivamente andare su un tale processo, dato che abbiamo il testo cifrato ma non la chiave.

Il primo oggetto di decrittografia dei dati sconosciuti sarebbe stato scoprire quale algoritmo era stato usato. Non è troppo lontano dall'immaginazione che potremmo essere in grado di ottenere queste informazioni, ad esempio, è possibile ipotizzare che alcuni protocolli standard siano stati probabilmente utilizzati in particolari situazioni (come SSL / TLS su un e- transazione commerciale). È persino ipotizzabile che potremmo anche conoscere la lunghezza della chiave.

Il secondo oggetto principale è la quantità di tempo che impiega per forzare la forza bruta tutte le combinazioni possibili. Questo è spesso citato come una strong ragione per la sicurezza della crittografia (con una lunghezza della chiave adatta). Tuttavia, diciamo che abbiamo il testo cifrato, l'algoritmo e la lunghezza della chiave (ma non la chiave), così come un computer molto potente capace di forzare brutemente l'intero insieme di possibili chiavi in un ragionevole lasso di tempo. / p>

La domanda è: visto che non sappiamo (ovviamente) quale sia il testo in chiaro, come facciamo a sapere quando abbiamo infranto la crittografia? Una cosa è enumerare tutte le decodifiche possibili dei dati, ma come possiamo determinare quale di questi candidati nel vero testo in chiaro?

    
posta ose 23.11.2012 - 12:16
fonte

1 risposta

1

In teoria non lo sai.

Ma in pratica hai qualche idea su quali sono i dati o come sono strutturati. Forse perché sai che è, diciamo traffico HTTP, o perché sai che è un file .DOCX o .PDF crittografato, o qualcosa di simile, o sei a conoscenza di alcune altre proprietà del testo in chiaro (ad esempio forse potresti sapere che il testo in chiaro è un binario blob seguito dal suo hash SHA-512 a 512 bit).

E anche se non hai nessuno dei precedenti, puoi comunque provare a formulare un'ipotesi sul fatto che il blob decodificato risultante sia corretto da un'analisi statistica.

Assegnazione dei compiti a casa: potresti pensare a come questa domanda si applica a XORing di un flusso di dati con un pad singolo, e perché il metodo quel è sicuro.

    
risposta data 23.11.2012 - 12:32
fonte

Leggi altre domande sui tag