Cómo funciona
1. AleatoriedadEl navegador toma 128-256 bits de la fuente de números aleatorios del sistema, la misma que se usa para claves de cifrado. Un generador de números aleatorios corriente no sirve aquí: es predecible.
2. Suma de controlDe esos bits se calcula el SHA-256, y los primeros bits del resultado se añaden al final: un bit por cada 32 bits de aleatoriedad. Para 12 palabras son 4 bits; para 24, ocho.
3. PalabrasLa cadena resultante se corta en trozos de 11 bits. Cada trozo es un número de 0 a 2047, es decir, el índice de una palabra en el diccionario estándar. De ahí el tamaño del diccionario y que el número de palabras sea siempre múltiplo de tres.
4. ComprobaciónEl camino inverso: las palabras se convierten en índices, los índices en bits, se recalcula el SHA-256 del inicio y se compara con el final. Si no cuadra, hay una errata o una palabra cambiada de sitio.