In che modo un RNG insicuro influenza la crittografia e come posso misurare la corrispondente perdita di sicurezza?

3

Supponiamo che un dato generatore di numeri casuali abbia una scarsa entropia ed è comprimibile da qualsiasi algoritmo di compressione (zlib, bzip2, lzma, ecc.)

In particolare i problemi con questo RNG sono:

  • Cattiva entropia
  • Dimensione seme errato
  • Mancato utilizzo di più fonti di entropia
  • Il rianging avviene solo una volta, al momento dell'inizializzazione, anziché a un intervallo. (meno importante dei problemi sopra menzionati)

Sto facendo questa domanda così posso:

  • .. stimare la perdita di sicurezza creata da una cattiva entropia
  • .. capire quali aspetti della crittografia sarebbero interessati e quali non sarebbero interessati (hashing, crittografia, firme, ecc.)
posta random65537 05.08.2014 - 16:06
fonte

2 risposte

1

Dipende tutto da dove viene utilizzato l'RNG. Un buon post con link a buone letture.

Crittografia: generazione IV
La crittografia viene effettuata perché l'intero punto di un vettore di inizializzazione serve a fornire più casualità nel contesto di crypt senza rekeying.

Crittografia: generazione chiave
Penso che questo dovrebbe essere ovvio, se la tua chiave è prevedibile in qualche modo, allora qual è il punto in cui viene crittografato? Qualsiasi crittografia a chiave pubblica utilizzata per proteggere la chiave viene invalidata perché ora è possibile derivare la chiave e decifrare le comunicazioni.

Generazione di chiave pubblica / privata Generazione di chiavi debole per la crittografia asimmetrica è estremamente negativa. Se è possibile ottenere una chiave privata, può essere utilizzata per impersonare persone o server. I dati firmati con quel certificato sono ora diffidati. Ora è possibile esporre le chiavi di sessione scambiate con la sua chiave pubblica per crittografare i dati.

Hash di integrità Questi possono essere effettuati indirettamente se stai usando un HMAC , questo risale alla derivazione della chiave errata. Se è possibile ricavare la chiave di integrità, un utente malintenzionato può inserire dati in un flusso e sarà accettato dall'altra parte come dati legit.

Ora gli attacchi contro queste debolezze non sono sempre i più facili, ma sono tutti fattibili. Dipende dal protocollo utilizzato, dalla quantità di altri dati necessari, ecc. In un protocollo come SSL / TLS sono necessari i dati di entrambi i lati, oltre alla chiave condivisa per ricavare tutte le chiavi. Spero che questo risponda alla tua domanda, sarei felice di rispondere più dettagliatamente, se lo desideri.

Esempi di quando gli RNG sono andati male.

    
risposta data 05.08.2014 - 16:53
fonte
0

Una fonte casuale sicura è l'aspetto più critico di un'infrastruttura di sicurezza. Senza una fonte di entropia adeguata sei perso. L'hash in linea di principio non è influenzata, ma la coppia di chiavi privata / pubblica utilizzata per crittografare l'hash è e quindi una firma digitale non può più essere considerata attendibile. Il problema più grande con i generatori casuali è che è difficile rilevare se un generatore casuale è buono o meno. Qualcosa che potrebbe sembrare casuale potrebbe non essere affatto casuale (ad esempio, il bug del generatore casuale in Debian nel 2008 non è stato rilevato con facilità). Poiché è difficile individuare i problemi con i generatori casuali, è anche il vettore di attacco più probabile per qualsiasi organizzazione a 3 lettere (ad esempio, si veda Dual_EC_DRBG). Se vuoi essere sicuro, potrebbe essere d'aiuto usare più fonti casuali e crearle una dopo l'altra.

    
risposta data 05.08.2014 - 16:25
fonte

Leggi altre domande sui tag