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.