5.5. Using a Mixing Function to Stretch Random Bits (Utilizzo di una Funzione di Miscelazione per Estendere Bit Casuali)
5.5. Using a Mixing Function to Stretch Random Bits (Utilizzo di una Funzione di Miscelazione per Estendere Bit Casuali)
Sebbene non sia necessario che una funzione di miscelazione produca lo stesso numero o meno bit di output rispetto ai suoi input, miscelare bit non può "estendere" la quantità di imprevedibilità casuale presente negli input. Pertanto, quattro input di 32 bit ciascuno, in cui ci sono 12 bit di imprevedibilità (come 4,096 valori ugualmente probabili) in ogni input, non possono produrre più di 48 bit di output imprevedibile. L'output può essere espanso a centinaia o migliaia di bit, ad esempio, miscelando con numeri interi successivi, ma lo spazio di ricerca dell'avversario intelligente è ancora 2^48 possibilità. Inoltre, miscelare a meno bit di quelli in input tenderà a rafforzare la casualità dell'output.
L'ultima tabella nella Sezione 5.1 mostra che miscelare un bit casuale con un bit costante con Exclusive Or produrrà un bit casuale. Sebbene questo sia vero, non fornisce un modo per "estendere" un bit casuale in più di uno. Se, ad esempio, un bit casuale è miscelato con uno 0 e poi con un 1, questo produce una sequenza di due bit ma sarà sempre o 01 o 10. Poiché ci sono solo due valori possibili, c'è ancora solo l'un bit di casualità originale.