¿Por qué usar un generador de contraseñas?
Las contraseñas débiles o reutilizadas siguen siendo la primera causa de compromiso de cuentas en línea. Según el informe Verizon DBIR 2024, el 80% de las filtraciones implican credenciales robadas o adivinadas. Un generador de contraseñas elimina los sesgos humanos y crea credenciales verdaderamente aleatorias.
El problema de las contraseñas creadas manualmente:
Los humanos somos malos generando aleatoriedad. Reutilizamos los mismos patrones: nombre + año de nacimiento, nombre de la mascota + "123", palabra del diccionario con un "!" al final. Estas contraseñas caen en segundos ante un ataque de diccionario.
Lo que resuelve un generador:
- Verdadera aleatoriedad: sin patrones, palabras del diccionario ni información personal
- Fuerza calibrada: ajusta la longitud, los tipos de caracteres y la entropía según tus necesidades
- Generación instantánea: crea una nueva contraseña en milisegundos
- Reproducibilidad: mismo nivel de seguridad para cada contraseña generada
Cómo usar el generador en 3 pasos
Paso 1: elegir el modo de generación
Hay dos modos disponibles:
- Aleatorio: caracteres individuales mezclados (ej:
k7#Qm9!xR2pL$wN4). Entropía máxima por carácter. Ideal cuando un gestor de contraseñas almacena la contraseña por ti. - Memorable: frases de contraseña compuestas por palabras aleatorias (ej:
Sloppily8-Rosy3-Unlocking8-Angelic4). Más fácil de recordar y teclear, con entropía elevada gracias al número de palabras.
Paso 2: ajustar los parámetros
En modo Aleatorio:
- Longitud: de 4 a 128 caracteres (recomendado: 16+ para cuentas sensibles)
- Tipos de caracteres: mayúsculas, minúsculas, dígitos, símbolos
- Exclusiones: caracteres similares (0/O, 1/l/I), caracteres personalizados
En modo Memorable:
- Número de palabras: de 3 a 10 (recomendado: 4+ palabras)
- Separador: guion, espacio, punto, personalizado
- Opciones: capitalización, adición de dígitos entre palabras
Paso 3: copiar y usar
Haz clic en el botón copiar. La contraseña se copia en tu portapapeles. Úsala inmediatamente en tu gestor de contraseñas o en el formulario de registro del servicio.
El indicador de fuerza muestra en tiempo real la entropía (en bits), la puntuación de seguridad y el tiempo estimado de descifrado por fuerza bruta.
Aleatorio vs. Memorable: cuándo usar cada modo
| Criterio | Modo Aleatorio | Modo Memorable |
|---|---|---|
| Entropía por carácter | ~6.5 bits (95 chars ASCII) | ~12.9 bits por palabra (7776 palabras Diceware) |
| Ejemplo | k7#Qm9!xR2pL$wN4 | Sloppily8-Rosy3-Unlocking8 |
| Facilidad de memorización | Imposible sin gestor | Posible con esfuerzo |
| Facilidad de escritura | Difícil (símbolos, mayúsculas) | Fácil (palabras comunes) |
| Caso de uso ideal | Cuentas almacenadas en un gestor | Contraseña maestra, PIN, acceso compartido |
Cuándo elegir Aleatorio:
- Cuentas web almacenadas en 1Password, Bitwarden o KeePass
- Claves API y credenciales de servicio
- Cualquier contraseña que nunca tendrás que teclear manualmente
Cuándo elegir Memorable:
- La contraseña maestra de tu gestor (la única que memorizas)
- Los códigos de desbloqueo que tecleas con frecuencia (pantalla de bloqueo)
- Las contraseñas compartidas que necesitas comunicar oralmente
Entender la entropía de las contraseñas
La entropía mide la imprevisibilidad en bits. Cada bit duplica el número de combinaciones posibles. La fórmula es: entropía = log2(número_de_combinaciones).
Ejemplo concreto:
- Una contraseña de 8 caracteres entre 26 letras minúsculas:
log2(26^8)= 37.6 bits - Lo mismo con mayúsculas + minúsculas + dígitos (62 chars):
log2(62^8)= 47.6 bits - Con símbolos adicionales (95 chars):
log2(95^8)= 52.6 bits - 16 caracteres entre 95 chars:
log2(95^16)= 105.2 bits
| Entropía | Fuerza | Tiempo de descifrado (10¹² intentos/seg) |
|---|---|---|
| <28 bits | Muy débil | Segundos |
| 28-35 bits | Débil | Minutos a horas |
| 36-59 bits | Media | Días a años |
| 60-127 bits | Fuerte | Miles a miles de millones de años |
| ≥ 128 bits | Muy fuerte | Más allá de toda tecnología previsible |
El umbral de 10¹² intentos/segundo corresponde a un ataque de fuerza bruta con hardware GPU moderno (tipo clúster de tarjetas gráficas). Para un servicio en línea con rate limiting, el tiempo real sería considerablemente mayor.
Buenas prácticas de seguridad de contraseñas
Recomendaciones NIST SP 800-63B (2024)
El National Institute of Standards and Technology (NIST) ha actualizado sus recomendaciones sobre contraseñas. Los cambios principales respecto a las prácticas anteriores:
| Práctica anterior | Recomendación NIST actual |
|---|---|
| Cambiar las contraseñas cada 90 días | Cambiar solo si están comprometidas |
| Exigir caracteres especiales | Priorizar la longitud sobre la complejidad |
| Mínimo 8 caracteres | Mínimo 8, recomendado 15+ |
| Preguntas secretas | Prohibidas (demasiado predecibles) |
| Pistas de contraseña | Prohibidas |
Las 5 reglas esenciales
- Una contraseña única por servicio: si un servicio se ve comprometido, los demás quedan protegidos
- Longitud > complejidad:
correcthorsebatterystaple(25 chars, ~58 bits) es más seguro y más memorable queP@$$w0rd(8 chars, ~30 bits) - Usa un gestor de contraseñas: 1Password, Bitwarden o KeePass para almacenar cientos de contraseñas únicas
- Activa la 2FA en todas partes: TOTP (Google Authenticator, Authy) o llave de seguridad FIDO2 en todas las cuentas críticas
- Verifica las filtraciones: consulta Have I Been Pwned para saber si tus credenciales han sido expuestas en una filtración de datos
Ejemplos de contraseñas y su fuerza
| Tipo | Ejemplo | Entropía | Tiempo de descifrado | Veredicto |
|---|---|---|---|---|
| Palabra común | password | ~0 bits | Instantáneo (diccionario) | Catastrófico |
| Nombre + año | María1990 | ~20 bits | Segundos | Muy débil |
| Aleatoria 8 chars | k7#Qm9!x | ~52 bits | Días | Media |
| Aleatoria 12 chars | k7#Qm9!xR2pL | ~79 bits | Miles de años | Fuerte |
| Aleatoria 16 chars | k7#Qm9!xR2pL$wN4 | ~105 bits | Miles de millones de años | Muy fuerte |
| Frase de contraseña 4 palabras | Correct-Caballo-Batería-Grapa | ~52 bits | Días a meses | Media |
| Frase de contraseña 5 palabras + dígitos | Sloppily8-Rosy3-Unlocking8-Angelic4-Brisk7 | ~85 bits | Millones de años | Fuerte |
El equilibrio ideal para la mayoría de los usuarios: una contraseña aleatoria de 16+ caracteres almacenada en un gestor, con una frase de contraseña de 5+ palabras como contraseña maestra.
¿Cómo funciona la generación?
Generación criptográfica (CSPRNG)
Nuestro generador usa crypto/rand de Go, un CSPRNG (Cryptographically Secure Pseudo-Random Number Generator) que se apoya en las fuentes de entropía del sistema operativo:
/dev/urandomen LinuxCryptGenRandomen WindowsSecRandomCopyBytesen macOS
A diferencia de los generadores pseudoaleatorios clásicos (Math.random() en JavaScript, random en Python), un CSPRNG produce una salida impredecible incluso para un atacante que conozca los valores anteriores.
Proceso de generación
- Cálculo del pool de caracteres: según las opciones activadas (mayúsculas, minúsculas, dígitos, símbolos), el pool contiene entre 10 y 95 caracteres
- Sorteo aleatorio: para cada posición de la contraseña, se extrae un byte aleatorio mediante el CSPRNG y se convierte en un índice dentro del pool
- Cálculo de la entropía:
log2(tamaño_pool^longitud)da la entropía en bits - Estimación del tiempo de descifrado: basada en 10¹² intentos/segundo (ataque GPU offline)
- Transmisión segura: la contraseña se devuelve por HTTPS y no se almacena, ni se registra, ni se guarda en caché
Herramientas complementarias
| Herramienta | Utilidad |
|---|---|
| Conversor de mayúsculas/minúsculas | Transformar la capitalización de textos (UPPER, lower, Title, camelCase) |
| Codificador/decodificador Base64 | Codificar datos sensibles para el transporte |
| Estadísticas de texto | Analizar la longitud y composición de un texto |
| Generador de slug | Transformar un texto en identificador URL-safe |
Recursos útiles
- NIST SP 800-63B: Digital Identity Guidelines: recomendaciones oficiales sobre contraseñas
- OWASP Password Storage Cheat Sheet: buenas prácticas de almacenamiento en el servidor
- Have I Been Pwned: verifica si tus credenciales están en una filtración de datos
- Diceware Passphrase: método original de generación de frases de contraseña
- Passkeys vs contraseñas: comparativa passkeys vs contraseñas tradicionales