Una contraseña segura cumple cuatro condiciones a la vez: tiene al menos 16 caracteres, la ha generado una máquina al azar, se usa en una sola cuenta y se guarda en un gestor de contraseñas. Dieciséis caracteres elegidos al azar entre mayúsculas, minúsculas, números y símbolos suponen unos 96 bits de posibilidades; una cadena de ocho caracteres inventada por ti, con un par de signos de exclamación, es muchísimo más débil. Lo que protege una cuenta no es lo complicada que parezca la contraseña, sino entre cuántas combinaciones posibles se eligió. Aquí verás por qué, cómo debe generarse y qué papel juegan los identificadores como el UUID.
Para generarla, el generador de contraseñas te deja elegir una longitud de 8 a 128 caracteres, usa 16 por defecto e incluye siempre mayúsculas, minúsculas, un número y un símbolo. Para identificadores que no deben repetirse entre sistemas está el generador de UUID. Si necesitas leer valores codificados en archivos de configuración, usa codificar y decodificar Base64, y para comprobar el límite de longitud de un sistema, el contador de caracteres. Estas herramientas funcionan en tu navegador: las contraseñas y los identificadores generados no se envían al servidor.
Por qué una contraseña segura empieza por la longitud
El coste de un ataque de fuerza bruta crece con el número de combinaciones posibles. Ampliar el conjunto de caracteres multiplica ese número; añadir caracteres lo eleva a una potencia. Por eso un carácter más rinde mucho más que diez símbolos nuevos en el alfabeto.
Veámoslo con números. Doce letras minúsculas al azar salen de un espacio de unos 56 bits; ocho caracteres elegidos entre los 94 imprimibles del teclado, de unos 52. Esos 4 bits de diferencia equivalen a 16 veces más posibilidades. Sin embargo, la segunda opción parece más segura porque lleva signos de puntuación. Las apariencias no cuentan: quien prueba combinaciones es una máquina.
Longitud frente a tipos de caracteres
La tabla muestra la entropía aproximada en bits, suponiendo que cada carácter se elige al azar y de forma independiente. Cada bit adicional duplica el número de intentos que necesitaría un atacante.
| Longitud | Solo minúsculas (26) | Letras y números (62) | Conjunto de este generador (65) | Valoración práctica |
| 8 caracteres | 38 bits | 48 bits | 48 bits | Solo si un sistema antiguo lo impone |
| 12 caracteres | 56 bits | 71 bits | 72 bits | Aceptable |
| 16 caracteres | 75 bits | 95 bits | 96 bits | Fuerte para el uso diario |
| 20 caracteres | 94 bits | 119 bits | 120 bits | Muy fuerte |
| 24 caracteres | 113 bits | 143 bits | 145 bits | Más de lo que necesitan casi todas las cuentas |
La lectura práctica es clara: dieciséis caracteres con los cuatro grupos bastan y sobran para las cuentas de todos los días, y por eso es el valor por defecto del generador. Pasar de 12 a 16 caracteres suma 24 bits, es decir, multiplica las posibilidades por unos 16 millones. Usa el mínimo de 8 solo cuando un sistema antiguo no te deje otra opción. La regla de incluir al menos un carácter de cada grupo apenas reduce estas cifras.
De dónde sale el azar
Las personas somos pésimas generando azar. Las cadenas que inventamos llevan, sin que lo notemos, recorridos del teclado, años de nacimiento y trozos de palabras conocidas. Los diccionarios de ataque apuntan justo a esos patrones: todo lo que se te ocurre de forma natural ya está en alguna lista.
Por eso el trabajo le corresponde a una máquina. Un buen generador se alimenta de una fuente impredecible y da a cada carácter la misma probabilidad. El generador de contraseñas usa la fuente aleatoria criptográfica del navegador, crypto.getRandomValues, y evita el sesgo de módulo. Si un número aleatorio se asignara a un carácter usando simplemente el resto de una división, algunos caracteres saldrían un poco más a menudo que otros, porque el rango del número no es un múltiplo exacto del tamaño del alfabeto. El generador descarta los valores que caen en ese tramo desigual y vuelve a sortear, de modo que todos los caracteres tienen exactamente las mismas probabilidades.
El conjunto de caracteres de este generador
El conjunto tiene cuatro grupos y cada contraseña incluye al menos un carácter de cada uno: mayúsculas, minúsculas, números y los símbolos !@#$%^&*. Nunca se usan caracteres que se confunden entre sí: el cero y la O mayúscula, el uno, la l minúscula y la I mayúscula son indistinguibles en muchas tipografías. Esta exclusión evita errores cuando tienes que teclear la contraseña a mano en un televisor u otro dispositivo, y reduce el espacio de posibilidades muy poco; un solo carácter más lo compensa de sobra. Limitar los símbolos a ocho muy comunes también es intencionado, porque algunos sistemas rechazan comillas, barras invertidas o espacios.
Otro detalle práctico es adónde va el valor después de generarlo. Los historiales del portapapeles, los borradores de las aplicaciones de mensajería y el autocompletado del navegador pueden retenerlo sin que te des cuenta. Pegarlo directamente en el campo de destino o en tu gestor, sin escalas intermedias, es un hábito sencillo que vale la pena.
Frases de contraseña
Cinco o seis palabras elegidas al azar son una alternativa razonable para las pocas claves que de verdad tienes que memorizar, como la contraseña maestra de tu gestor. La condición es que las palabras sean realmente aleatorias: el verso de una canción que te gusta no cuenta. Todo lo demás, al gestor.
Guardar y compartir una contraseña segura
Generarla es la mitad fácil. La difícil es decidir dónde vive después.
- Un valor distinto por cuenta. Una sola filtración abre todas las cuentas que comparten la clave. Reutilizar es un riesgo mucho mayor que quedarse corto de longitud.
- Usa un gestor de contraseñas. Nadie memoriza treinta cadenas largas y aleatorias, y apuntarlas en una libreta o en un archivo de texto es la peor solución posible.
- Activa la verificación en dos pasos. Una aplicación de autenticación o una llave física protegen la cuenta incluso si la contraseña se filtra.
- Separa los canales al compartir. Nunca envíes la contraseña y la cuenta a la que pertenece en el mismo mensaje.
- Cámbiala en cuanto sospeches. Si crees que un valor ha quedado expuesto, cámbialo ya. “Seguro que no pasa nada” es una frase muy cara.
- Mantén al día las opciones de recuperación. Unos códigos de respaldo caducados o un correo de recuperación antiguo pueden dejarte fuera igual que un atacante.
Sobre compartir: un canal temporal siempre es mejor que uno permanente. Una nota que se autodestruye o un enlace de un solo uso es mucho más seguro que un mensaje que quedará años en una bandeja de entrada.
Base64 no es cifrado
Un error frecuente en los archivos de configuración es creer que un valor en Base64 está oculto. Base64 es solo una codificación para transportar datos binarios como texto: no usa clave y cualquiera puede revertirla en un paso. Pega un valor como c2VjcmV0bw== en el decodificador y verás el texto plano al instante. Escribir una contraseña o una clave de API en Base64 no la protege; esos valores deben ir en un almacén de secretos o en una variable de entorno. Igual de importante es limpiar los valores antiguos: las claves olvidadas en configuraciones de servidor, scripts sueltos y capturas de pantalla son una fuente habitual de filtraciones que salen a la luz años después.
Identificadores: único no significa secreto
Un UUID es un valor de 128 bits que sirve para crear identificadores que no se repiten entre sistemas; se escribe así: 3f2b8c1e-9a4d-4e7b-b6c2-5d1f0a9e7c34. Sustituye al contador incremental en números de pedido, nombres de archivo o registros de sesión, y evita que dos servidores que generan valores en el mismo instante choquen. El generador de UUID produce la versión 4: 122 de los 128 bits son aleatorios y el resto indica la versión y la variante. Puedes generar entre 1 y 100 de una vez; por defecto, cinco.
La distinción clave es esta: ser único no es ser secreto. Aunque 122 bits aleatorios son difíciles de adivinar, un identificador no se trata como un secreto: aparece en la barra de direcciones, queda en los registros y viaja a herramientas de analítica de terceros. Usarlo como contraseña, como token de sesión o como la parte secreta de un enlace del tipo “quien tenga el enlace puede acceder” es un error. Donde haga falta confidencialidad, usa valores diseñados para eso, guardados aparte y con caducidad.
Cambiar contadores por identificadores tiene además una ventaja: no revelan nada. Un número correlativo le dice a cualquiera cuántos registros tienes y a qué ritmo crecen. Un identificador aleatorio no dice nada.
Cuentas compartidas en un equipo
Con las cuentas personales las reglas están claras; el problema empieza con los accesos compartidos. Una cuenta de redes sociales, el panel del dominio o la pasarela de pagos suelen tener un único acceso que, con el tiempo, acaban conociendo cuatro o cinco personas. Cuando alguien se va, nadie sabe con certeza qué cuentas sigue teniendo.
Tres pasos lo hacen manejable. Primero, inventario: qué cuentas existen, quién las tiene y con qué permisos. Segundo, pasar a accesos individuales siempre que se pueda; muchos servicios admiten miembros de equipo. Tercero, guardar las pocas claves que de verdad deben compartirse en un almacén común que registre quién abre qué. La lista para cuando alguien deja el equipo debe ser corta para que se cumpla: cambiar los valores del almacén común, revocar los accesos individuales, retirar sus dispositivos de verificación y cerrar las sesiones abiertas en equipos compartidos.
Preguntas frecuentes
¿Tengo que cambiar la contraseña cada tres meses?
Ya no se recomienda el cambio periódico obligatorio, porque bajo esa presión la gente crea variaciones predecibles, como sumar uno al número del final. Cámbiala cuando haya un motivo: sospecha de filtración, un dispositivo compartido o una persona que deja el equipo.
¿Qué hago si una web no acepta símbolos?
El generador incluye al menos un símbolo en cada contraseña y los limita a ocho de uso muy extendido. Si aun así te encuentras con un sistema que no admite ninguno, sustitúyelos por letras o números y alarga la contraseña dos o tres caracteres. Como muestra la tabla, la longitud recupera con creces los pocos bits que pierdes.
¿Cómo encuentro claves antiguas en archivos de configuración?
Lo más rápido es comparar dos versiones: comparar textos enfrenta la configuración antigua y la nueva línea por línea y muestra las líneas cambiadas con su número. Si estás revisando las reglas de acceso de un servidor, cuál es mi IP te confirma tu dirección de salida: muestra la IP que ve el servidor, tu agente de usuario y la cabecera de idioma, sin datos de ubicación.
¿Qué riesgo real tiene reutilizar una contraseña?
Tras una filtración en un sitio, los atacantes prueban automáticamente el mismo par de correo y contraseña en otros servicios; la técnica se conoce como relleno de credenciales. Una sola reutilización basta para anular incluso una clave excelente.
Si quieres conocer a fondo la estructura de los identificadores, lee qué es un UUID; para la lógica de los valores codificados, qué es Base64; y para los límites de longitud de cada plataforma, la guía de límites de caracteres. Para mantener ordenados estos valores en archivos de configuración, revisa la disciplina de nombres de trabajar con datos JSON, y si un enlace compartido tiene que pasar a papel, sigue con la guía de uso de códigos QR.