Herramientas para desarrolladores
Cómo crear una contraseña segura: longitud, azar y lo que recomienda el NIST
Por qué una contraseña larga y aleatoria supera a una corta y complicada, cuántos bits de entropía necesitas de verdad, qué cambiaron las directrices del NIST en 2025 y cómo generar y guardar tus contraseñas con seguridad.
Casi todos los consejos sobre contraseñas hablan de reglas: una mayúscula, un número, un símbolo. A quien ataca le importan poco esas reglas. Lo que te protege es cuántos intentos hacen falta para encontrar tu contraseña, y eso depende casi por completo de dos cosas: su longitud y lo aleatoria que sea.
Por qué «C0ntr@seña!» es débil
Los programas para descifrar contraseñas no prueban todas las combinaciones a ciegas. Empiezan por listas de contraseñas filtradas en brechas anteriores, palabras de diccionario, nombres y fechas, y luego aplican los cambios que la gente suele hacer: la a se convierte en @, la o en 0, una mayúscula al principio y un número o un signo de exclamación al final. Una contraseña construida así cumple casi todas las reglas de complejidad y aun así está entre los primeros intentos.
Por eso el Instituto Nacional de Estándares y Tecnología de Estados Unidos (NIST) pide ahora a los servicios en línea que comparen las contraseñas nuevas con listas de contraseñas comunes y comprometidas en lugar de imponer reglas de composición. Más abajo verás las directrices.
Entropía: la fuerza medida en bits
Si una contraseña se elige al azar, su fuerza se puede calcular. Si cada carácter se toma de un conjunto de N caracteres posibles, aporta log₂(N) bits de entropía, y una contraseña de longitud L tiene L × log₂(N) bits. Cada bit adicional duplica el número de intentos que necesita un atacante.
entropía (bits) = longitud × log₂(tamaño del conjunto)
16 caracteres aleatorios de los 94 caracteres imprimibles del teclado:
16 × log₂(94) = 16 × 6,55 ≈ 104,9 bits | Contraseña | Entropía |
|---|---|
| 8 minúsculas aleatorias | 37,6 bits |
| 8 caracteres aleatorios de todo el teclado (94) | 52,4 bits |
| 4 palabras aleatorias de una lista de 7776 | 51,7 bits |
| 12 caracteres aleatorios de todo el teclado | 78,7 bits |
| 6 palabras aleatorias de una lista de 7776 | 77,5 bits |
| 16 caracteres aleatorios de todo el teclado | 104,9 bits |
| 20 letras y cifras aleatorias (62) | 119,1 bits |
¿Cuánto se tardaría en descifrarla?
La velocidad depende de dónde se produzca el ataque. El formulario de acceso de una web suele permitir solo unos pocos intentos por minuto. El caso peligroso es el ataque sin conexión tras una brecha de datos, cuando los atacantes prueban contraseñas contra los hashes robados en su propio hardware. La velocidad depende de cómo guardó el servicio las contraseñas: una función hash rápida y anticuada se puede probar miles de millones de veces por segundo con tarjetas gráficas; una lenta a propósito, como bcrypt o Argon2, solo miles de veces.
La tabla muestra el tiempo medio para encontrar una contraseña aleatoria (la mitad de todas las posibilidades) a dos velocidades. Son supuestos ilustrativos, no mediciones de un atacante concreto: 10 000 millones de intentos por segundo con un hash rápido y 10 000 por segundo con uno lento.
| Contraseña | Entropía | Hash rápido: 10 000 millones de intentos/s | Hash lento: 10 000 intentos/s |
|---|---|---|---|
| 8 minúsculas | 37,6 bits | unos 10 segundos | unos 4 meses |
| 4 palabras aleatorias | 51,7 bits | unos 2 días | unos 5800 años |
| 8 caracteres, todo el teclado | 52,4 bits | unos 3 días y medio | unos 9700 años |
| 6 palabras aleatorias | 77,5 bits | unos 350 000 años | muchísimo más |
| 12 caracteres, todo el teclado | 78,7 bits | unos 750 000 años | muchísimo más |
| 16 caracteres, todo el teclado | 104,9 bits | unos 59 billones de años | muchísimo más |
Con unos 80 bits, adivinar la contraseña sin conexión deja de ser viable incluso frente a un hash rápido. Nuestro Generador de contraseñas usa la misma escala: por debajo de 50 bits la califica como débil, de 50 a 79 bits como buena y a partir de 80 bits como fuerte. Su configuración predeterminada, 20 caracteres de los cuatro grupos, da unos 129 bits.
Qué dicen las directrices del NIST de 2025
La publicación especial NIST SP 800-63B-4, finalizada en julio de 2025, está pensada para los sistemas federales de Estados Unidos, pero muchas empresas y equipos de seguridad de todo el mundo la siguen. Para los servicios que comprueban contraseñas establece:
- Las contraseñas que son la única forma de iniciar sesión deben tener al menos 15 caracteres; las que se usan junto con un segundo factor, al menos 8.
- Los servicios deberían admitir al menos 64 caracteres.
- Los servicios no deben imponer reglas de composición, como exigir mayúsculas, minúsculas, números y símbolos.
- Los servicios no deben obligar a cambiar la contraseña periódicamente; el cambio es obligatorio cuando hay indicios de que se ha comprometido.
- Las contraseñas nuevas deben compararse con una lista de bloqueo de contraseñas habituales, previsibles o comprometidas.
- Los gestores de contraseñas y el autocompletado deben estar permitidos, y debería poder pegarse la contraseña.
- No se permiten pistas visibles para terceros ni preguntas de seguridad («el nombre de tu primera mascota»).
La dirección está clara: larga, única e impredecible es mejor que corta y adornada.
Tres maneras de conseguir una contraseña fuerte
1. Deja que un generador elija caracteres al azar
Una contraseña aleatoria de 16 a 20 caracteres es la mejor opción para cualquier cuenta guardada en un gestor de contraseñas, porque nunca la escribes tú. Nuestro Generador de contraseñas la crea en tu navegador con la API Web Crypto (crypto.getRandomValues) y muestreo por rechazo, de modo que todos los caracteres son igual de probables. Además, garantiza que cada grupo de caracteres que marques aparezca al menos una vez, para que las webs con reglas de composición antiguas también la acepten. No se envía nada a ningún servidor.
2. Usa una frase de contraseña aleatoria para lo que debes recordar
Para las pocas contraseñas que tienes que escribir, como el inicio de sesión del ordenador o la contraseña maestra de tu gestor, una frase de seis o más palabras elegidas al azar es más fácil de recordar y de teclear en el móvil. La clave es «al azar»: elige las palabras con dados a partir de una lista como la de 7776 palabras en inglés que publica la Electronic Frontier Foundation (cada palabra aporta unos 12,9 bits), no de una canción, una cita o tu imaginación.
3. Guárdalo todo en un gestor de contraseñas
Reutilizar contraseñas es el mayor riesgo de todos. Cuando se vulnera un servicio, los atacantes prueban el mismo correo y la misma contraseña en muchos otros, una técnica llamada relleno de credenciales (credential stuffing). Un gestor permite que cada cuenta tenga su propia contraseña aleatoria mientras tú solo recuerdas una. El Instituto Nacional de Ciberseguridad (INCIBE) también recomienda usar un gestor de contraseñas y activar la verificación en dos pasos siempre que sea posible.
Más allá de la contraseña
- Activa la verificación en dos pasos en el correo, el banco y las redes sociales. Tu cuenta de correo es la más importante, porque con ella se pueden restablecer todas las demás.
- Usa llaves de acceso (passkeys) donde se ofrezcan. Una passkey sustituye la contraseña por una clave criptográfica guardada en tu dispositivo: no hay nada que adivinar ni nada que escribir en una página de acceso falsa.
- Comprueba si una contraseña se ha filtrado. El servicio Pwned Passwords de Have I Been Pwned comprueba una contraseña sin recibirla: solo se envían los primeros cinco caracteres de su hash SHA-1, y la comparación se hace en tu lado.
- Cambia una contraseña cuando haya un motivo, como un aviso de brecha, un dispositivo compartido o un clic en un enlace de phishing, no según un calendario fijo.
Herramientas de esta guía
Preguntas frecuentes
¿Qué longitud debe tener una contraseña?
Al menos 15 caracteres si es la única protección de una cuenta, que es el mínimo actual del NIST. Si la guarda un gestor de contraseñas, usa entre 16 y 20 caracteres aleatorios. Para una frase que tengas que memorizar, usa seis o más palabras aleatorias.
¿Necesito símbolos en mi contraseña?
No si es larga y aleatoria. Un símbolo hace cada carácter algo más fuerte (log₂ 94 ≈ 6,55 bits frente a log₂ 62 ≈ 5,95 bits con letras y cifras), pero añadir cuatro caracteres más aporta unos 24 bits. Usa símbolos cuando una web los exija.
¿Debo cambiar mis contraseñas con regularidad?
Solo cuando haya motivos para pensar que una contraseña ha quedado expuesta. Las directrices del NIST de 2025 indican a los servicios que no obliguen a cambios periódicos, porque llevan a variaciones previsibles como «Primavera2026!» seguida de «Verano2026!».
¿Es seguro generar una contraseña en línea?
Sí, si el generador funciona en local y usa un generador de números aleatorios criptográfico. El nuestro funciona por completo en tu navegador con crypto.getRandomValues; la contraseña nunca se transmite ni se guarda.
¿Qué significa «bits de entropía»?
Es el logaritmo en base 2 del número de posibilidades igual de probables. Una contraseña de 80 bits es una entre 2⁸⁰ (unos 1,2 × 10²⁴) posibilidades, y un atacante necesita de media la mitad de intentos para encontrarla.
Fuentes y lecturas recomendadas
- NIST SP 800-63B-4: Authentication and Authenticator Management (2025) (csrc.nist.gov)
- EFF: New wordlists for random passphrases (www.eff.org)
- Troy Hunt: Understanding Have I Been Pwned’s use of SHA-1 and k-anonymity (www.troyhunt.com)
- Crypto: getRandomValues() – MDN Web Docs (developer.mozilla.org)