Soporte dicta la contraseña del Wi‑Fi de visitas. Operaciones teclea el login del router en un teclado compartido. Un desarrollador saca contraseñas de usar y tirar para una cuenta de pruebas. Esas tres tareas no piden la misma cadena. Las dos primeras hay que escribirlas a mano. La tercera casi siempre acaba en un gestor de contraseñas. Entonces mucha gente se encuentra el cómic xkcd 936: Tr0ub4dor&3 es fea y aun así ronda los 28 bits, mientras que correct horse battery staple —cuatro palabras inglesas corrientes— ronda los 44. De ahí se escapó la frase «cuatro palabras equivalen a fuerte» y se quedó pegada.

Las cuentas del cómic tienen una premisa que suele caerse: cada palabra se extrae al azar de forma uniforme de una lista de unos dos mil vocablos habituales (la tira presupone 11 bits por palabra). Cambia esa lista por una de 100 palabras y las mismas cuatro bajan a unos 27 bits: más débiles que el dibujo, y mucho más débiles que una contraseña aleatoria de 16 caracteres. Este artículo no recorre los botones de un generador. Responde cuándo usar caracteres aleatorios, cuándo una frase memorable, y si cuatro palabras bastan. MyPassGen ofrece los dos modos sin cuenta. El modo aleatorio usa 16 caracteres por defecto; el memorable saca de 3 a 10 palabras de una lista interna de 100. Cada cifra de abajo la puedes recalcular con una calculadora.

Parte la decisión una sola vez

¿Este secreto lo rellenará luego un gestor? Si sí, genera caracteres aleatorios con el 16 por defecto, o más largos. Si alguien tiene que teclearlo —Wi‑Fi de visitas, una impresora compartida, un router que abres dos veces al año— usa una frase memorable y sube el recuento a 8–10 palabras. No te quedes en cuatro porque se lea bien en voz alta.

Pregunta si un gestor puede rellenarla

La NIST SP 800-63B-4, cerrada el 31 de julio de 2025, separa la longitud de cómo una persona introduce el secreto. Cuando la contraseña es el único factor, el verificador debe exigir al menos 15 caracteres. Cuando es un factor entre varios, el suelo sigue siendo ocho. Los verificadores también deben permitir gestores y el relleno automático, y deberían permitir pegar cuando no hay una API de autocompletado. El documento dice que los gestores suben la probabilidad de elegir secretos más fuertes, sobre todo si el propio gestor trae un generador.

La misma revisión retira dos reglas que muchos sitios siguen imponiendo. Los verificadores no deben exigir mayúsculas, minúsculas, números y símbolos como política de composición. No deben forzar cambios periódicos salvo que haya evidencia de que ese secreto se filtró. Para la elección aleatoria frente a frase, el corte es limpio: si puedes pegar o autocompletar, no hay motivo para ceder entropía a cambio de que se pronuncie mejor. Si hay que teclear, usa palabras para recortar erratas y luego añade palabras para devolver la entropía.

El modo aleatorio de MyPassGen acepta 6–128 caracteres y usa 16 por defecto, en la misma franja de longitud que el suelo de 15 del factor único. Por debajo de 8 avisa de que la contraseña es más débil. Ese rango es el límite del generador, no la afirmación de que 6 caracteres «cumplen NIST». Si un sitio te recorta a 8, toma los 8 enteros, activa un segundo factor y no finjas que una cadena aleatoria de 8 equivale a una de 16.

Dos modelos de generación

Una contraseña aleatoria y una frase memorable no son dos pieles del mismo secreto. Cuentan las conjeturas de forma distinta. Los caracteres aleatorios sacan un símbolo cada vez de un conjunto: activa mayúsculas, minúsculas, números y símbolos, y el tamaño del conjunto es la suma de esos grupos. Una frase memorable saca de una lista fija y une las piezas con un separador. Si el atacante sabe qué lista usaste y cuántas palabras tomaste, el espacio de búsqueda es «tamaño de la lista elevado al número de palabras», no «lo larga que parece la frase».

Los caracteres aleatorios suman bits por posición

Con extracciones uniformes, la entropía es aproximadamente longitud × log2(tamaño del conjunto). Los cuatro grupos por defecto de MyPassGen son 26 mayúsculas, 26 minúsculas, 10 dígitos y 18 símbolos en !@#$%^&*()-_=+[]{} — 80 símbolos en total. Dieciséis posiciones con ese conjunto dan unos 101 bits. Solo letras y dígitos (62) a longitud 16 dan unos 95 bits. Baja la longitud a 8 y mantén el conjunto de 80, y te quedas en unos 51 bits. Por eso una contraseña «compleja» corta puede parecer feroz y seguir en el mismo orden de magnitud que una frase memorable mediana.

La frase memorable suma bits por palabra

Con extracciones uniformes, la entropía es aproximadamente número de palabras × log2(tamaño de la lista). La lista Diceware de Arnold Reinhold y la lista larga de 2016 de la Electronic Frontier Foundation tienen ambas 7.776 entradas: cinco dados de seis caras, 65. Cada palabra ronda los 12,9 bits. El consejo habitual de la EFF son seis palabras, unos 77,5 bits. Las cuatro palabras corrientes del cómic, a 11 bits cada una, rondan los 44. Esa es una lista más grande de «inglés de cada día», no una lista corta de 100.

La extracción tiene que salir de una fuente criptográfica. MDN define Crypto.getRandomValues como valores aleatorios criptográficamente fuertes. La misma documentación marca Math.random() como no apto para nada relacionado con la seguridad y te dice que uses Web Crypto. Una «contraseña aleatoria» o una «frase memorable» montada con Math.random() no puede pretender, con honestidad, la entropía completa de las fórmulas de arriba.

La entropía se cuenta desde la lista

La misma frase —«cuatro palabras»— puede diferir por un factor de dos al cambiar el denominador. log2(100) es unos 6,64, así que cuatro palabras de una lista de 100 dan unos 27 bits. log2(7776) es unos 12,92, así que cuatro palabras Diceware dan unos 52 bits. Los 11 bits por palabra del cómic dan unos 44. Citar el recuento y esconder el tamaño de la lista es la forma habitual de escribir una frase memorable más fuerte de lo que es.

Añadir un dígito o un símbolo solo suma una elección pequeña: diez dígitos son unos 3,3 bits; un conjunto corto de símbolos, unos 3. En el modo memorable de MyPassGen, si activas un dígito o un símbolo insertado, la estimación de la página suma unos 6 bits por cada uno. Es una regla interna generosa, no «un ! casi equivale a seis palabras Diceware». Poner en mayúscula la primera letra de cada palabra se puntúa a unos 0,5 bits por palabra: un empujón, no un cambio de franja. Para llevar una frase de lista 100 a la banda Fuerte del generador (55 bits en ese medidor; la regla compartida de este artículo trata «fuerte» cerca de 60), hacen falta 8–10 palabras, no un 1! detrás de cuatro.

Elegir las palabras tú mismo es peor. Una letra de canción, el título de una película o el nombre del sprint actual ya viven en las listas de frases de los atacantes. No obtienes «tamaño de la lista a la cuarta» por una oración que recuerdas. Una frase memorable solo gana la fórmula cuando las palabras son extracciones uniformes de una lista conocida, no una línea que ya te gustaba.

100 palabras, 7.776 palabras, cadenas aleatorias

La tabla usa una sola fórmula de punta a punta. «100 palabras» es la lista memorable interna de MyPassGen. «7.776 palabras» es Diceware / EFF larga. Las cadenas aleatorias usan un conjunto de 80 símbolos. Las etiquetas de la derecha son una sola regla para que los dos formatos quepan en una página: por debajo de unos 40 bits, Débil; por debajo de 60, Media; por debajo de 80, Fuerte; por encima, Muy fuerte. Es una escala para leerla tú, no una promesa sobre una GPU concreta. El medidor de frases del propio generador usa 40 / 55 / 70, así que diez palabras de la lista de 100 (unos 66 bits) leen Fuerte allí, y seis palabras Diceware (unos 77,5 bits) leen Muy fuerte.

Método Aprox. En esta regla
Lista de 100 × 4 palabras ~27 bits Débil
Lista de 100 × 6 palabras ~40 bits Media (justo por encima)
Lista de 100 × 8 palabras ~53 bits Media
Lista de 100 × 10 palabras ~66 bits Fuerte
Diceware 7.776 × 4 palabras ~52 bits Media
Diceware 7.776 × 6 palabras ~77,5 bits Fuerte (tamaño habitual de la EFF)
Aleatoria de 8 caracteres (conjunto de 80) ~51 bits Media
Aleatoria de 16 caracteres (conjunto de 80) ~101 bits Muy fuerte

Quédate con dos hechos de la tabla. Primero: una contraseña aleatoria de 16 caracteres por defecto es la fila «Muy fuerte» más barata: no la memorizas; el gestor la rellena. Segundo: un modo memorable que se para en cuatro palabras se sienta cerca de una cadena aleatoria corta o de la palabra de diccionario reescrita del cómic. Que se lea bien no la asciende. Cuando hay que teclear, lleva la lista de 100 a 8–10 palabras, o acepta la longitud de seis palabras Diceware. No alinees cuatro palabras de lista corta contra 16 caracteres aleatorios.

El suelo de 15 caracteres del factor único de NIST es un mínimo de longitud, no un mínimo de entropía. Quince caracteres de un conjunto de 80 dan unos 95 bits: la misma franja que el 16 por defecto. Cuatro palabras inglesas corrientes, incluso a los 44 bits del cómic, siguen por debajo de la cadena aleatoria que implica esa longitud. Un secreto tecleado tiene que seguir siendo mecanografiable y quedarse en el orden de magnitud correcto. Se llega añadiendo palabras, no añadiendo @.

Errores frecuentes

«Cuatro palabras es la contraseña del xkcd» solo vale si la lista y la fuente aleatoria coinciden con el cómic o con Diceware. Palabras inglesas unidas por guiones en una pantalla no demuestran 11 o 12,9 bits por palabra.

«Una frase memorable siempre es más débil que los caracteres aleatorios» también es falso. Seis palabras Diceware son unos 77,5 bits, ya Fuerte en esta regla. Diez palabras de una lista de 100 son unos 66 bits, también Fuerte. Lo débil es una lista corta más demasiado pocas palabras, no el hecho de que el secreto esté hecho de palabras.

«Añade 123 y un signo de exclamación y ya está arreglado» casi no hace nada a una contraseña corta elegida por una persona: esos sufijos ya están en los diccionarios. En una cadena de palabras extraída de forma uniforme, un dígito extra son unos pocos bits. No sustituye a dos palabras extra.

«El sitio puede emitir una frase memorable, así que el resultado tiene que ser fuerte» depende de la lista. Hay páginas que usan 7.776 palabras. Otras usan unos cientos de sustantivos temáticos, o menos. Antes de fiarte de la salida, pregunta tres cosas: ¿cuánto mide la lista publicada? ¿La fuente es getRandomValues? ¿El resultado salió de la pestaña como dato de negocio? Un eslogan no responde a ninguna de las tres.

«HTTPS significa que la contraseña no se puede filtrar» solo cubre la escucha en el cable. Si el generador hace POST del resultado, o escribe el secreto en un evento de analytics, HTTPS sigue entregando texto plano a ese host. La comprobación está en Cómo comprobar que el cifrado en el navegador no sube el texto plano: lee la línea de petición y el cuerpo en Red, no el candado.

No pegues una contraseña recién generada en un sitio de fortaleza que sube la cadena

Algunos comprobadores hacen POST de la contraseña. Otros solo mandan un prefijo de hash. Una comprobación local descarga una lista pública de débiles y deja la candidata en el cuadro. La diferencia está en Lista local de contraseñas filtradas vs Have I Been Pwned: qué prueba cada comprobación. La generación y la comprobación local se abren sin cuenta.

Compruébalo al momento

Estos pasos no dependen de una promesa de marca. Usa una cadena que no vayas a poner en una cuenta real.

  1. Abre el generador, elige frase memorable, pon el recuento en 4 y genera una vez. Anota la etiqueta de fortaleza y la entropía de la página. Según la tabla de arriba, 100 palabras × 4 debería caer cerca de Débil (unos 27 bits).
  2. Sube el recuento a 8 o 10 y genera otra vez. La etiqueta debería subir; 10 palabras deberían acercarse a Fuerte. No «mejores» el resultado cambiando las cuatro palabras por otras que se te hayan ocurrido.
  3. Pasa a caracteres aleatorios, deja la longitud en el 16 por defecto, mantén los cuatro tipos activos y genera. La etiqueta debería ser Muy fuerte (unos 101 bits). Pon los tres resultados en fila: cuatro palabras memorables no deberían superar la cadena aleatoria de 16.
  4. Abre Red en las herramientas para desarrolladores, activa «Conservar registro» y genera otra vez. Las peticiones de documento y los eventos de analytics no deberían contener la contraseña que sigue en la página. La fuente aleatoria debería ser Web Crypto, no Math.random() en el script — busca ese nombre en Fuentes si quieres confirmarlo.
  5. Si también quieres una lista pública de débiles, pega en el comprobador local una contraseña antigua que pienses retirar. No envíes una contraseña maestra nueva a un sitio que sube la cadena. Un fallo solo significa que no está en esta lista. No significa «nunca se filtró».

El generador de contraseñas de MyPassGen está construido sobre ese límite. Los dos modos extraen con getRandomValues en la pestaña actual. El modo aleatorio es 6–128 caracteres, 16 por defecto, con aviso de más débil por debajo de 8. El memorable es 3–10 palabras de una lista de 100; puedes añadir un separador, un dígito, un símbolo o mayúsculas iniciales. Puedes crear hasta 100 cadenas de una vez, copiarlas o exportar un TXT. No hay cuenta ni almacén de contraseñas. Cierra la pestaña y esas cadenas no se quedan en el servidor. Lo que verificas es Red, no el titular.

Cómo elegir la siguiente contraseña

Para el secreto que vas a rotar hoy, responde primero la pregunta del gestor. Si el autocompletado se encargará, genera 16 caracteres aleatorios o más, una cadena por sitio, sin reutilizar. Si hay que teclearla, genera una frase memorable de 8–10 palabras. Léela en voz alta una vez a la persona de al lado. No pegues la misma cadena en un chat de grupo «como copia de seguridad». Cuando el destinatario está lejos y el secreto debe existir una sola vez, usa un enlace de un solo uso y deja la clave detrás de # en la URL, en lugar de hacer una segunda copia en texto plano.

Los routers, el Wi‑Fi de visitas y las impresoras son los casos tecleados habituales: los invitados usan el teclado del móvil, y las mayúsculas mezcladas con símbolos producen errores 0/O y 1/l. Una cadena de palabras más larga es más difícil de oír mal y de copiar mal que una aleatoria «compleja» de 8 caracteres. Si el panel de administración es raro y llevas un gestor en tu propio dispositivo, sigue prefiriendo 16 caracteres aleatorios para ese login. No reutilices la frase del Wi‑Fi como contraseña del router.

Cuando hayas hecho ese corte, la pregunta del artículo ya tiene respuesta. Aleatoria o memorable es una pregunta de entrada. Si cuatro palabras bastan es una pregunta de lista. Cuatro palabras de una lista de 100 no deberían cargar una cuenta importante. Una aleatoria de 16 por defecto sí puede. La etiqueta de la página debería cuadrar con esta tabla. Si no cuadra, no te fíes de «parece una frase, así que es más segura».

Preguntas frecuentes

¿Puede una frase de cuatro palabras ser la contraseña maestra?

No en una lista de 100. Unos 27 bits son una cadena aleatoria corta. Una contraseña maestra, una frase de cifrado de disco o cualquier secreto que raras veces rotas y que lamentarías filtrar debería ser 16 o más caracteres aleatorios guardados en un gestor, o 8–10 palabras extraídas al azar — no una oración que inventaste.

¿Debo añadir mayúsculas y símbolos para pasar las reglas de complejidad del sitio?

Si el sitio sigue exigiendo tipos de caracteres mezclados, activa un dígito insertado, un símbolo o mayúsculas iniciales para que el formulario acepte la cadena. Eso satisface una regla de ortografía anticuada. No es la fuente principal de entropía. NIST ya dice a los verificadores que no impongan esas reglas. Cuando el formulario acepte la contraseña, júzgala por el recuento de palabras y el tamaño de la lista.

¿Hace falta una cuenta para generar una contraseña aleatoria o una frase memorable? ¿Se sube el resultado?

No hace falta cuenta. La generación debería quedarse en la pestaña actual. El riesgo de registro empieza cuando entregas el resultado a un sitio que sube la cadena. Abre Red después de pulsar generar: el cuerpo de la petición y los eventos de analytics no deberían contener esa contraseña. Si necesitas una copia, cópiala o expórtala a un sitio en el que ya confíes. No hay un almacén dentro del sitio.

Para un Wi‑Fi que se teclea, ¿16 caracteres aleatorios o una frase memorable?

Depende de quién teclee. Si solo tú te conectas a través de un gestor, usa 16 caracteres aleatorios. Si las visitas teclean a menudo en un móvil, usa 8–10 palabras y evita 0/O, 1/l y un montón de símbolos. No reutilices esa frase del Wi‑Fi en la página de administración del router.