Sì, puoi usare una chiave master per generare ciò che è chiamato "keystream" la dimensione del testo in chiaro e XOR con il testo in chiaro per crittografarlo. Questo è ciò che chiamiamo un codice di flusso, e gli esempi sono RC4 e Salsa20.
No, questo non fornisce una sicurezza perfetta. Nel 1949 Claude Shannon dimostrò che non si può avere la segretezza perfetta della teoria dell'informazione senza una chiave casuale della stessa lunghezza del testo in chiaro. (Come molte chiavi possibili nello spazio delle chiavi come plaintext nello spazio dei messaggi.) L'uso di una piccola chiave significa che ci sono necessariamente meno chiavi dei plaintext, e l'espansione della lunghezza del messaggio usando un generatore pseudo-casuale non cambia Questo. Usa lo stesso tasto due volte, ottieni lo stesso keytream due volte. Per questo motivo, un codice di flusso non può offrire la perfetta segretezza di un blocco temporale, in cui la chiave è veramente casuale e la lunghezza del messaggio.