Web-GECO, Añadiendo contraseñas nuevas

GECO's picture

Previously on GECO...

La semana pasada ya estuve programando algo, y conseguí una versión funcional, eso sí, solo para lectura, es decir aún no se podían añadir contraseñas nuevas. Sin embargo el cliente web listaba todas las contraseñas y era posible conseguir cualquiera.


gecoweb8

Un gran problema con el que me he encontrado es copiar una contraseña al portapapeles desde javascript. Por lo visto firefox lo tiene capado y no es viable desde javascript. Hay alguna chapucilla por ahí que utiliza un swf para hacerlo, pero me parece demasiado complejo para eso.

Así pues la solución por la que opté es no copiar la contraseña al portapapeles automáticamente sino que pego la contraseña descifrada en un textbox para copiarla rápidamente pulsando ctrl+x. La contraseña está visible durante 5 segundos si no haces nada para evitarlo, pasado ese tiempo se quita.

También le he añadido los botones de editar y borrar. Editar todavía no está implementado. Borrar funciona perfectamente, el único pero que tiene es que no pregunta por confirmación.

¿Qué hemos avanzado hoy?

Esta tarde he estado haciendo el formulario para añadir una nueva contraseña en el cliente web.

Le he añadido un generador de contraseñas aleatorias y además comprueba la fortaleza de esas contraseñas.

La cosa funciona así, el cliente web recibe la contraseña en claro, ya sea generandola con javascript o escribiendola a mano. Mediante javascript se cifra esta contraseña. Luego al pulsar "Vale!" se envían los datos del formulario, pero claro está, no se envían las contraseñas en claro, es más, se puede añadir una contraseña escribiendo tan solo la cadena cifrada.

Por lo tanto las contraseñas creadas desde el cliente web son teóricamente seguras.


gecoweb7

Y nada más, lo próximo será habilitar la edición y comenzar con el cliente en gtk, aunque antes de eso debería habilitar una función tanto a nivel de gecojs como de gecolib para cambiar la contraseña maestra de todas las contraseñas, valga la redundancia :P