Blum Blum Shub

El algoritmo BBS es: donde M=pq es el producto de dos números primos muy grandes p y q.

Los dos números primos, p y q, deben ser ambos congruentes a 3 (mod 4) (esto asegura que cada residuo cuadrático posee una raíz cuadrada que también es un residuo cuadrático) y mcd(φ(p-1), φ(q-1)) debe ser pequeña (esto hace que la longitud del ciclo sea extensa).

Una característica interesante del generador BBS es la posibilidad de calcular todo valor xi en forma directa: El generador es apropiado para ser utilizado en criptografía, aunque no en simulaciones, ya que no es muy rápido.

Esto hace que el método sea tan seguro como otras tecnologías de cifrado asociadas al problema de factorización, como por ejemplo el cifrado RSA.

El generador comienza a evaluar x0 utilizando x -1=s y crea la sucesión x0, x1, x2,... x5= 9, 81, 82, 36, 42, 92.