Conocimientos · Texto, datos y seguridad
¿Qué hace que una contraseña sea segura?
Respuesta corta
Una contraseña segura es larga, generada al azar y se usa en una sola cuenta. La longitud y la aleatoriedad importan más que mezclar símbolos: NIST SP 800-63B recomienda ahora al menos 15 caracteres cuando la contraseña es el único factor, ninguna regla de composición obligatoria, ninguna caducidad programada y comprobar las contraseñas contra listas de contraseñas filtradas. Cuatro palabras al azar de una lista de 7,776 dan unos 51.7 bits de entropía; seis dan unos 77.5 bits.
Abrir Generador de contraseñasLa seguridad se mide en intentos
Los atacantes no adivinan letra por letra. Primero prueban contraseñas filtradas, luego palabras de diccionario con sustituciones comunes y después patrones como una palabra con mayúscula inicial seguida de un año y !. Una contraseña como P@ssw0rd2024! cumple la mayoría de las reglas de complejidad y aun así cae pronto, porque todas sus partes son predecibles.
La entropía mide cuántos intentos necesita una contraseña cuando se generó al azar. Para una contraseña de longitud L elegida uniformemente de un conjunto de N símbolos, la entropía es L × log2(N) bits, y cada bit adicional duplica el trabajo. La fórmula solo se aplica a la generación aleatoria; no dice nada útil sobre una contraseña inventada por una persona.
Entropía de los estilos de contraseña habituales
| Estilo | Conjunto de símbolos | Bits por símbolo | Longitud de ejemplo | Entropía total |
|---|---|---|---|---|
| Letras minúsculas | 26 | 4.70 | 16 caracteres | ≈ 75.2 bits |
| Letras y dígitos | 62 | 5.95 | 12 caracteres | ≈ 71.5 bits |
| Todo el ASCII imprimible | 94 | 6.55 | 12 caracteres | ≈ 78.7 bits |
| Todo el ASCII imprimible | 94 | 6.55 | 16 caracteres | ≈ 104.9 bits |
| Palabras Diceware | 7,776 | 12.92 | 4 palabras | ≈ 51.7 bits |
| Palabras Diceware | 7,776 | 12.92 | 6 palabras | ≈ 77.5 bits |
Ejemplo práctico: log2(7,776) = 12.925, así que cuatro palabras al azar dan 4 × 12.925 ≈ 51.7 bits, unas 3.7 × 10^15 posibilidades. Un atacante que pruebe 10 mil millones de contraseñas por segundo contra un hash rápido filtrado las cubriría todas en unos 4 días. Seis palabras requieren unos 700,000 años al mismo ritmo.
Los ataques en línea son mucho más lentos, ya que los formularios de inicio de sesión limitan los intentos y bloquean la cuenta. Los márgenes amplios importan en los ataques sin conexión tras la filtración de una base de datos, donde la velocidad de prueba depende de cómo guardó el sitio el hash.
Qué dice ahora NIST SP 800-63B
La Special Publication 800-63B de NIST, revisión 4, publicada en su versión final en 2025, fija las reglas de contraseñas para los sistemas federales de EE. UU. y se copia ampliamente en otros ámbitos. Sus principales requisitos para los servicios que aceptan contraseñas:
- Longitud mínima de 15 caracteres cuando la contraseña es el único autenticador, y de 8 cuando forma parte de una autenticación multifactor.
- Permitir contraseñas de al menos 64 caracteres y aceptar espacios, todo el ASCII imprimible y los caracteres Unicode.
- Ninguna regla de composición, como exigir un dígito, una mayúscula y un símbolo.
- Ningún cambio periódico obligatorio. Exigir el cambio solo cuando haya indicios de que la contraseña se ha visto comprometida.
- Comprobar las contraseñas nuevas contra una lista de bloqueo de valores filtrados, comunes o propios del contexto, como el nombre del servicio o el del usuario.
- Nada de pistas de contraseña ni preguntas de seguridad, y permitir pegar para que funcionen los gestores de contraseñas.
El razonamiento es que las reglas de composición y la caducidad empujan a la gente hacia patrones predecibles, como que Summer2025! pase a ser Autumn2025!, que aportan muy poca entropía real.
Frases de contraseña frente a caracteres aleatorios
| Caracteres aleatorios | Palabras aleatorias | |
|---|---|---|
| Ejemplo | r7#Qm2!vLx9@pT4z | orbit-candle-mosaic-thrift-velvet-harbor |
| Entropía | ≈ 105 bits (16 de 94) | ≈ 77.5 bits (6 de 7,776) |
| Fácil de escribir | No, sobre todo en el teléfono | Sí |
| Fácil de recordar | No | Con práctica |
| Ideal para | Cuentas guardadas en un gestor de contraseñas | Las pocas contraseñas que debes memorizar |
Las palabras deben elegirse al azar, con dados o con un generador, no escogerlas tú. Una frase de una canción, una cita o una oración que escribirías tú tiene mucha menos entropía de lo que sugiere su longitud.
Reglas prácticas
- Usa un gestor de contraseñas y deja que genere una contraseña aleatoria única, de 16 caracteres o más, para cada cuenta. CISA da el mismo consejo.
- Memoriza solo unas pocas frases de contraseña: la contraseña maestra del gestor y la del inicio de sesión de tu dispositivo. Usa cinco o seis palabras al azar.
- No reutilices nunca una contraseña. El credential stuffing, probar en otros sitios pares de correo y contraseña filtrados, es una de las formas más comunes de robo de cuentas.
- Activa la autenticación multifactor, preferiblemente con llaves de acceso (passkeys) o una app de autenticación en lugar de SMS, para el correo, el banco y el gestor de contraseñas.
- Cambia una contraseña cuando un servicio informe de una filtración, no según un calendario.
Preguntas frecuentes
¿Qué longitud debe tener una contraseña?
Al menos 15 caracteres para una cuenta protegida solo por contraseña, según NIST SP 800-63B rev 4. Para contraseñas generadas al azar y guardadas en un gestor, de 16 a 20 caracteres es un valor cómodo por defecto.
¿Las frases de contraseña son más seguras que las contraseñas?
Pueden serlo, si las palabras se eligen al azar. Seis palabras aleatorias superan a una contraseña típica de 10 caracteres inventada por una persona, pero una contraseña aleatoria de 16 caracteres tiene más entropía que seis palabras.
¿Debo cambiar mis contraseñas con regularidad?
No. NIST desaconseja los cambios periódicos obligatorios porque llevan a variaciones predecibles. Cambia una contraseña cuando haya señales de que se ha comprometido, como un aviso de filtración.
¿Los caracteres especiales hacen más segura una contraseña?
Solo un poco. Pasar de 62 a 94 caracteres posibles añade unos 0.6 bits por carácter, mientras que añadir un carácter más suma unos 6.5 bits. La longitud ayuda más que los símbolos.