Cómo usarla
- Define la longitud con el control deslizante o escribe un número exacto de caracteres (4–128).
- Elige los tipos de caracteres que quieres incluir. Edita la lista de símbolos si un sitio web solo acepta algunos.
- Si quieres, excluye los caracteres que se parecen entre sí y mantén activada la opción «Usar cada tipo seleccionado al menos una vez» en los sitios que exigen una combinación específica.
- Copia una contraseña o usa «Copiar todo» para copiar todas, una por línea. Pulsa «Generar de nuevo» para crear otro conjunto.
Cómo funciona
Cada carácter se elige con crypto.getRandomValues, el generador de números aleatorios criptográficamente seguro integrado en tu navegador. Nunca se usa Math.random. Para elegir un carácter de un conjunto de n caracteres, la herramienta genera un número aleatorio de 32 bits y descarta los valores del pequeño intervalo sobrante por encima del mayor múltiplo de n. Este muestreo por rechazo evita el sesgo de módulo, así que todos los caracteres del conjunto tienen exactamente la misma probabilidad de aparecer.
Cuando está activada la opción «Usar cada tipo seleccionado al menos una vez», la herramienta elige primero un carácter de cada tipo seleccionado, completa las posiciones restantes con caracteres del conjunto combinado y luego mezcla todas las posiciones con el algoritmo de Fisher-Yates, usando la misma fuente aleatoria sin sesgo. Así, los caracteres garantizados no aparecen siempre al principio.
La entropía se calcula como log2(tamaño del conjunto) × longitud. Una contraseña de 16 caracteres con los 89 caracteres predeterminados tiene unos 103 bits de entropía; una de 20 caracteres, unos 129 bits. La regla de «usar cada tipo» reduce ligeramente la cantidad de contraseñas posibles, por lo que la entropía real es un poco menor que la indicada. Las etiquetas son una guía aproximada: menos de 28 bits es muy débil; de 28 a 39, débil; de 40 a 59, aceptable; de 60 a 99, fuerte; y 100 o más, muy fuerte. La entropía solo describe contraseñas generadas aleatoriamente como estas; no dice nada sobre las contraseñas que inventa una persona.
Ejemplos
Una contraseña para guardar en un gestor de contraseñas
Mantén los valores predeterminados (20 caracteres y los cuatro tipos). El resultado tiene unos 129 bits de entropía, mucho más de lo que se puede adivinar, y tu gestor de contraseñas la recordará por ti.
Un sitio que no acepta algunos símbolos
Si un banco solo acepta !@#$%, sustituye la lista de símbolos por esos cinco caracteres. El conjunto se reduce a 67 caracteres, así que una contraseña de 16 caracteres sigue teniendo unos 97 bits.
Una contraseña de Wi-Fi que tienes que escribir en un televisor
Desactiva los símbolos y excluye los caracteres que se parecen entre sí. Sin I, l, 1, O, 0 y o, una contraseña de 16 caracteres formada por las 56 letras y cifras restantes es fácil de leer en voz alta y sigue teniendo unos 93 bits.
Preguntas frecuentes
¿Qué longitud debería tener mi contraseña?
Para las cuentas protegidas con un gestor de contraseñas, basta con usar de 16 a 20 caracteres aleatorios. Si tienes que escribir la contraseña a menudo, una más larga que solo use letras y cifras es más fácil de introducir y puede ser igual de segura que otra más corta con símbolos.
¿Es seguro generar contraseñas en un sitio web?
Esta página genera contraseñas íntegramente en tu navegador, con la fuente segura de números aleatorios del sistema operativo. No se envían a ningún servidor, no se guardan ni se incluyen en estadísticas. Puedes desconectarte de internet después de que se cargue la página y la herramienta seguirá funcionando.
¿Por qué excluir caracteres que se parecen entre sí reduce la entropía?
La entropía depende de cuántos caracteres puede ocupar cada posición. Al eliminar caracteres, el conjunto se reduce y cada carácter aporta un poco menos de entropía. Puedes compensarlo añadiendo algunos caracteres más.
¿Qué significa «sesgo de módulo» y por qué importa?
Un generador sencillo toma un número aleatorio y usa el resto de dividirlo por el tamaño del conjunto. Si el tamaño del conjunto no divide exactamente el rango de números aleatorios, algunos caracteres aparecen un poco más que otros. Esta herramienta descarta el tramo desigual y vuelve a generar un número, de modo que todos los caracteres tienen la misma probabilidad de aparecer.
Privacidad
Las contraseñas se generan en tu navegador con crypto.getRandomValues. No se suben, guardan, registran ni envían a estadísticas; solo se registra un evento anónimo que indica que se usó la herramienta. Al copiar, se usa el portapapeles de tu dispositivo.