Come cryptoanalizzare un time pad che utilizza un documento di testo normale come pad?

1

Ho letto che affinché un pad di un tempo sia veramente sicuro, il pad stesso deve essere casuale. Data la difficoltà pratica di condividere un pad casuale sicuro, mi chiedevo quali sarebbero stati i problemi con l'utilizzo della vasta moltitudine di documenti in chiaro che sono attualmente disponibili sul web.

Ad esempio, se si dispone di un modello preordinato per la selezione di un documento tra Bob e Alice. Box utilizza uno di questi documenti dal web, ad esempio un file Gutenberg del progetto e riempie il suo messaggio (UTF8) con quel documento e invia il file crittografato ad Alice.

Quale processo potrebbe utilizzare Eve per decodificare il messaggio?

Supponiamo che il pad sia più lungo del messaggio e che nessun altro messaggio tra Bob e Alice utilizzi lo stesso pad, ma altri documenti Web che concordano reciprocamente.

Dato il vasto numero di tratti di testo, sembra che potrebbe essere una fonte pratica per i time pad. Ma ho il fastidioso sospetto che il pattern linguistico di base nel pad possa causare un problema.

    
posta Walter Anderson 28.10.2014 - 17:23
fonte

1 risposta

5

Beh, prima di tutto, il numero di file nel progetto Gutenberg, sebbene vasto per gli standard umani, è davvero piccolo per un computer, quindi è praticabile semplicemente provarli tutti.

Oltre a questa osservazione, i dati pad non casuali implicano bias. Se sia il testo in chiaro che il pad sono "testi in linguaggio naturale", allora la domanda diventa: dato m XOR m ', dove entrambi m e m ' sono "testo", come possiamo recuperare m e m' ? Questo problema equivale al famigerato "two times pad", in cui è stato usato un pad p (veramente) casuale, ma sfortunatamente due volte, con due messaggi distinti m e m '. Nel problema "two times pad", l'attacker conosce m XOR p e m XOR p ; XORando questi due valori insieme, l'attaccante ottiene m XOR m ' e procede da quello. Nel tuo caso, il testo crittografato è già m XOR m ', quindi viene applicato lo stesso metodo di attacco.

Vedi questo e that per i dettagli.

    
risposta data 28.10.2014 - 18:21
fonte