I tasti DES devono essere casuali?

2

In codifica stream (ovvero OTP ). Il pad su cui il testo normale è Xored deve essere casuale per ottenere segreto perfetto , o psudorandom per garantire sicurezza semantica

Dose applicabile al DES o al blocco dei cifrari in generale?

Dose la casualità del tasto DES influenza la sicurezza?

    
posta HSN 09.08.2014 - 08:23
fonte

2 risposte

4

Bene, se si esegue semplicemente un singolo DES, non importa: i tasti DES a 56 bit possono essere facilmente forzati. Il EFF DES cracker potrebbe rompere una chiave DES a 56 bit in meno di un giorno nel lontano 1999.

In generale, è meglio avere una chiave completamente casuale per la crittografia simmetrica (cifrari a blocchi) in quanto non ci saranno scorciatoie quando si impone la chiave con la forza bruta.

In pratica, utilizzando una chiave generata da una funzione di derivazione chiave che costruisce una chiave pseudo-casuale da la strong password scelta dall'utente potrebbe essere perfettamente valida, a condizione che si utilizzi una password complessa. Tuttavia, l'entropia della tua chiave derivata pseudo-casuale poggerà davvero sulla complessità della password. Se la password viene trovata in un elenco comune di password o presenta una complessità intrinseca bassa, un utente malintenzionato esperto può recuperare rapidamente la chiave.

Quindi, se vuoi 100 bit di sicurezza, dovresti scegliere una password con circa 100 bit di entropia, ad esempio 17 caratteri casuali da A-Z, a-z, 0-9; o 15 caratteri casuali da tutti ASCII stampabili, o circa 8 parole casuali scelto un dizionario di 5000 parole. E dì con AES-128 con una password di 100 bit questo indebolirà la sicurezza da 2 128 a 2 100 .

    
risposta data 09.08.2014 - 10:28
fonte
3

La casualità è in realtà: ciò che l'attaccante non sa . Pertanto, le chiavi di crittografia sono esattamente una cosa in cui è necessaria molta casualità.

Di solito parliamo di entropy nel seguente modello:

  • La chiave viene generata con un processo che comporta calcoli (codice) e input casuali (raccolti da elementi fisici).
  • L'autore dell'attacco dovrebbe avere una perfetta conoscenza dei calcoli, ma non degli input casuali.
  • L'attaccante proverà a recuperare le chiavi provando le possibili chiavi nell'ordine ottimale, iniziando dal più probabile.

Diciamo che la chiave ha n bit di entropia se l'attaccante colpirà quella giusta dopo, in media, 2 n -1 cerca. Nota che una chiave di n , dove tutti i bit chiave sono casuali in modo uniforme e indipendente, raggiunge esattamente n bit di entropia, che è il punto della notazione.

Una conseguenza è che non puoi avere più di n bit di entropia in una chiave di n bit (quindi un tasto DES può < em> mai essere più strong di 56 bit di entropia, che è troppo basso per il comfort come sottolinea @drJimbob); ma puoi avere molto meno. Ad esempio, se il processo di generazione della chiave riguarda l'ottenimento di un numero intero a 32 bit casuale, eseguendo l'hashing con SHA-1 e mantenendo i primi 56 bit dell'output, l'entropia non sarà più di 32 bit (un utente malintenzionato potrebbe tentare tutti possibili valori a 32-bit, eseguendo l'hashing di ognuno di essi: questo colpirà il tasto giusto con un costo medio massimo di 2 31 ).

In generale, usi i sistemi di crittografia simmetrica con le chiavi n -bit (es. n = 128 per AES) e vuoi ottenere il tuo denaro, vale a dire n -bit entropia. Questo è il vero motivo per cui usi le chiavi a 128 bit: per creare spazio sufficiente per l'entropia per sconfiggere tutti gli attaccanti terrestri. A volte accettate di usare meno entropia perché la vostra fonte per la chiave è un pezzo di dati che non può essere sviluppato arbitrariamente: in particolare quando le chiavi derivano da password . Le password non raggiungono un'alta entropia perché le menti umane non sono brave a ricordare password altamente entropiche (e sono abissalmente cattive a generare password casuali).

Quando elabori un elemento dati attraverso una funzione di derivazione della chiave deterministica, non aumenti mai l'entropia, poiché, per definizione del nostro modello di attacco, l'utente malintenzionato potrebbe eseguire la stessa funzione di derivazione della chiave deterministica. Potresti, tuttavia, abbassare l'entropia, se lo fai senza cura. I KDF con crittografia avanzata non abbassano l'entropia al di sotto del limite implicito dalla dimensione della chiave (una chiave a 56 bit non può mai contenere più di 56 bit di entropia).

    
risposta data 11.08.2014 - 21:54
fonte

Leggi altre domande sui tag