¿Cómo funciona el circuito en el verdadero generador de números aleatorios de Intel?

El circuito tiene tres secciones, como se describe en la imagen de arriba.

La sección roja es un pestillo RS con las entradas S y R conectadas juntas. (Ver Flip-flop (electrónica) para saber cómo funciona normalmente) Cuando S y R son simultáneamente altos, la salida se fuerza a Q = 0, Q ‘= 0. (S = R = 1 no está permitido en la operación normal). Cuando S y R caen simultáneamente de 1 a 0, la salida se vuelve inestable cuando Q y Q ‘intentan forzarse mutuamente. Eventualmente se conforman con Q = 1 o Q = 0 y Q ‘es opuesto, pero el resultado final es aleatorio dependiendo del estado térmico.

La sección azul es un “comentario negativo”. Utiliza un par de condensadores para sesgar ligeramente las entradas hacia un resultado final en particular, sesgando más hacia ‘0’ cuando la salida es ‘1’ y más hacia ‘1’ cuando la salida es 0, intentando mantener una salida promedio imparcial.

El multivibrador de 1 disparo toma Q / Q ‘como entradas y emite los pulsos para cargar / descargar los sesgos del condensador.

La sección verde solo detecta cuándo se establece la salida, luego, después de un breve retraso del reloj, establece S y R simultáneamente en alto y bajo para comenzar a generar otro bit aleatorio.

Si bien la salida no está sesgada específicamente hacia ‘1’ o ‘0’, no es realmente aleatoria. Tiende a tener un sesgo de tendencia hacia un patrón específico (autocorrelación: la salida como ‘1’ hace que sea más probable que el próximo sea un ‘0’), y eso es algo malo para los generadores de números aleatorios. Entonces, para ajustarse a eso, hay un circuito de acondicionamiento RNG que arroja algunos de los números más correlacionados automáticamente.

No estoy completamente seguro de mirar este esquema, pero supongo que se basa en:

  • El multivibrador en el bloque azul se instala en una posición aleatoria
  • el flip flop rojo se alimenta S = R = 1 que tiene resultados indefinidos

También sospecho que hay algo de relevancia en lo que el esquema no muestra, que es la susceptibilidad a los parásitos y los diferenciales de fabricación. En otras palabras, puede haber más ingeniería en el dado.