Anteriormente ya había programado un simple generador de contraseñas y desde el principio la idea es no abandonarlo e ir agregando mejoras a medida que pasa el tiempo, de acuerdo a las posibilidades.
Por lo que hoy se agregaron las siguientes actualizaciones:
- Mejora en presentación de botones y texto informativo: Ahora se usan los botones propios de Bootstrap y se le asignan colores de forma que sean más fáciles de identificar.
- Se agrega posibilidad de modificar los símbolos, números y letras utilizados en la generación de contraseñas.
- Se agrega enlace de sistema de reporte de errores: El enlace redirige a un sistema propio de Greenborn en el cual se sistematizan los diferentes bugs detectados por los usuarios.
Posibles mejoras a futuro
Algo que estoy pensando agregar en un futuro cercano, es la posibilidad de generar contraseñas a partir de palabras concatenadas.
De forma que se podría generar una contraseña que ademas de ser larga, pueda ser fácil de recordar.
Por ej. es claro que una contraseña al estilo: “RUYI6Bw41}e#X6W8p2&s33l6w@jG64Bs/26~” es mucho más difícil de recordar que otra al estilo: “CEIBO.GUAYMALLEN.PILI.BARCO.TAMIKÉN.PARLA”.
¿Que tan segura son las contraseñas basadas en palabras?
En este caso, la combinatoria estaría de nuestro lado si las palabras se eligen desde una gran base de datos.
Por ej. si se tuvieran registradas 10.000 palabras, y se quisieran saber todas las posibles contraseñas a generar con:
- 1: 10.000 posibilidades.
- 2: 100.000.000 posibilidades.
- 3: 1.000.000.000.000 posibilidades.
- 5: 100.000.000.000.000.000.000 posibilidades.
Básicamente la cantidad de combinaciones se calcula de la forma:
#pass = #palabras_elegibles ^ cantidad_palabras
Siendo #pass la cantidad máxima de combinaciones, #palabras_elegibles la cantidad de palabras disponible en la base de datos elevado a la longitud de la contraseña expresada en cantidad_palabras.
Adicionalmente se podría definir la posibilidad de crear una contraseña mixta, es decir una en la cual se puedan intercalar palabras con las opciones anteriores ya definidas.
No se trata de ningún invento
Las contraseñas basadas en palabras, se usan mucho por ej. en las billeteras de cripto monedas (Wallets) como una de las opciones de recuperación de la cuenta, ya que si de diera el caso de que se borrara la configuración del wallet se pudiera recuperar su acceso a partir de dicha clave.
Y también es claro que se pueden usar en otros sistemas que requieran el uso de contraseñas, aunque tal vez su mayor limitante sea la longitud del texto generado, ya que existen páginas que limitan la longitud de las claves, y en otras ocasiones el límite no siempre es explicito.