Respuesta directa
La generación de contraseñas criptográficamente seguras obtiene entropía aleatoria directamente del generador del sistema operativo (CSPRNG) a través de window.crypto.getRandomValues, garantizando impredecibilidad estadística frente a ataques de fuerza bruta.
Cómo usar esta herramienta
Configura la longitud y los juegos de caracteres
Define la longitud deseada (entre 12 y 64 caracteres) y activa o desactiva mayúsculas, minúsculas, dígitos y símbolos especiales.
Evalúa la puntuación de entropía de Shannon
Comprueba en tiempo real la fuerza criptográfica medida en bits de entropía y la resistencia estimada ante intentos de descifrado.
Genera y copia la clave
Pulsa el botón de generación para obtener una combinación aleatoria no sesgada y cópiala a tu portapapeles con un solo clic.
Aleatoriedad criptográfica frente a generadores pseudoaleatorios convencionales
La función ordinaria Math.random() de JavaScript utiliza algoritmos diseñados para velocidad y no para seguridad, lo que hace que sus secuencias sean predecibles. Nuestro generador conecta directamente con window.crypto.getRandomValues, alimentado por la entropía del núcleo del sistema operativo (/dev/urandom en Unix/macOS y BCryptGenRandom en Windows).
- Presencia garantizada de tipos: Asegura que la contraseña contenga al menos un carácter de cada grupo habilitado.
- Mezcla no sesgada de Fisher-Yates: Aplica un algoritmo de ordenación que elimina el sesgo de módulo en la distribución de caracteres.
- Métrica de entropía de Shannon: Evalúa la solidez matemática de la clave según su longitud (L) y el tamaño del conjunto de caracteres disponibles (R).
Ejemplos prácticos
Generar credencial de alta seguridad de 20 caracteres
Entrada: Longitud: 20 caracteres, Conjuntos: Mayúsculas (26), Minúsculas (26), Dígitos (10), Símbolos (28) — Total: 90 caracteres
Salida: Generada: 'k9#vM7$qL2@pX5!wR8&z', Entropía calculada: ~129,8 bits de información
Proporciona un espacio de claves astronómico que requeriría aproximadamente 2^130 combinaciones para vulnerarse por fuerza bruta.
Limitaciones
- Las contraseñas generadas en la memoria del navegador son efímeras; guárdalas de inmediato en un gestor de contraseñas de confianza.
- El navegador no puede comprobar si el portapapeles de tu equipo o el sistema operativo están comprometidos por software malicioso local.
Preguntas frecuentes
¿Por qué window.crypto es más seguro que Math.random()?
Math.random() es un algoritmo determinista cuyo estado interno puede deducirse a partir de resultados previos. En contraste, window.crypto extrae entropía del hardware y del núcleo del sistema operativo, ofreciendo aleatoriedad criptográfica no predecible.
¿Se registran o guardan en servidores las contraseñas que genero?
No. Todas las contraseñas se crean y residen únicamente en la memoria volátil de tu navegador local. FreeKitX no almacena contraseñas, no guarda registros ni cuenta con bases de datos remotas.
Referencias y normas autorizadas
- Recomendación Oficial W3C para la Web Cryptography API ↗ — Interfaz estandarizada para la generación criptográficamente segura de números pseudoaleatorios (CSPRNG).
- Publicación Especial NIST SP 800-63B: Pautas de Identidad Digital (Autenticación) ↗ — Guía oficial del Instituto Nacional de Estándares y Tecnología de EE. UU. sobre entropía de contraseñas y reglas de composición.