Volver al blog
Desarrollo / NOTAS DE DESARROLLO

Un generador de contraseñas en JavaScript

Una herramienta web para explorar la generación de contraseñas y las decisiones que influyen en su resistencia.

Interfaz del generador de contraseñas

Este proyecto es una aplicación web para generar contraseñas. Su propósito es evitar elecciones previsibles basadas en nombres, fechas u otras palabras fáciles de relacionar con una persona.

Interfaz del generador de contraseñas

Generar una cadena no basta

La resistencia de una contraseña depende de su longitud, de cómo se elige cada carácter y de que no se reutilice en distintos servicios. La fuente de aleatoriedad es parte del problema: una secuencia que parece desordenada no tiene por qué ser impredecible.

Por eso, ninguna herramienta debería prometer contraseñas «imposibles de piratear». Tampoco una contraseña larga evita por sí sola el phishing o una filtración del servicio en el que se utiliza.

Leer el proyecto con esa pregunta en mente

La demo y el código sirven para estudiar la interfaz y el proceso de generación. Antes de emplear un generador para credenciales reales, revisa su fuente de aleatoriedad y sus límites. Para aplicaciones web, la API criptográfica del navegador ofrece crypto.getRandomValues(); Math.random() no es una fuente adecuada para ese uso.

Si te interesan las pequeñas herramientas de desarrollo, también puedes explorar Copyright O’matic.

Código fuente

Explorar el proyecto en GitHub

Escrito por Sergio Soriano

Desarrollo, curiosidad y proyectos compartidos.

Sobre Sergio Soriano