Passa al contenuto principale

3.3. Ring Oscillator Sources (Fonti Oscillatore ad Anello)

3.3. Ring Oscillator Sources (Fonti Oscillatore ad Anello)

Se viene progettato o programmato sul campo un circuito integrato, un numero dispari di porte può essere collegato in serie per produrre un oscillatore ad anello a funzionamento libero. Campionando un punto nell'anello a una frequenza fissa (ad esempio, una determinata da un oscillatore a cristallo stabile), una certa quantità di entropia può essere estratta a causa delle variazioni nella temporizzazione dell'oscillatore a funzionamento libero. È possibile aumentare il tasso di entropia facendo XOR dei valori campionati da alcuni oscillatori ad anello con lunghezze relativamente prime. A volte si raccomanda di utilizzare un numero dispari di anelli in modo che, anche se gli anelli diventano in qualche modo bloccati sincronicamente l'uno all'altro, ci saranno ancora transizioni di bit campionate. Un'altra possibile fonte da campionare è l'uscita di un diodo rumoroso.

I bit campionati da tali fonti dovranno essere pesantemente de-skewed, come devono essere i tempi di rotazione del disco (vedere Sezione 4). Sarebbe necessario uno studio ingegneristico per determinare la quantità di entropia prodotta a seconda del particolare design. In ogni caso, queste possono essere buone fonti il cui costo è una quantità banale di hardware secondo gli standard moderni.

Come esempio, IEEE 802.11i suggerisce il circuito sottostante, con la dovuta attenzione nel design all'isolamento degli anelli l'uno dall'altro e dai circuiti temporizzati per evitare la sincronizzazione indesiderata, ecc., e con un'elaborazione post estensiva [IEEE_802.11i].

          |\     |\                |\
+-->| >0-->| >0-- 19 total --| >0--+-------+
| |/ |/ |/ | |
| | |
+----------------------------------+ V
+-----+
|\ |\ |\ | | output
+-->| >0-->| >0-- 23 total --| >0--+--->| XOR |------>
| |/ |/ |/ | | |
| | +-----+
+----------------------------------+ ^ ^
| |
|\ |\ |\ | |
+-->| >0-->| >0-- 29 total --| >0--+------+ |
| |/ |/ |/ | |
| | |
+----------------------------------+ |
|
Other randomness, if available ---------+