Hola gente..
Estoy programando en vb.net
Y mi aplicacion tiene un grave problema... y pensé miles de cosas.. pero no se que elegir..
El tema es el siguiente:
Mi aplicacion, basicamente, lo que hace es guardar contraseñas...
Por ejemplo:
Ejecutas el programa.. pide una contraseña MADRE.. que es la del programa, y se inicia...
Luego podes agregar contraseñas.. por ejemplo:
hago click en "Agregar Perfil" y pongo de nombre de usuario: Skeletron, de contraseña: xxxxx y "web": elhacker.net
Esos 3 datos, se me tienen que guardar en un archivo...
El programa tiene una opcion para ver todas las contraseñas que he guardado..
Pero el problema.. es que si copio el archivo de contraseñas (database) de MI aplicacion, donde tiene todas mis contraseñas... y se la sobreescribo a otra persona que tiene la misma aplicacion... cuando haga click en VER CONTRASEÑAS.. verá las mias....
Y eso no debe ser así!!!! es GRAVISIMO!!.. U.U
Entonces pensé:
* cifrar los datos, y que la contraseña maestra del programa, sea la KEY de encriptacion... y que el IV de encriptacion sea aleatorio...
Pero el problema es que no siempre la contraseña maestra va a ser de la longitud exacta que requiere para ser KEY de encriptacion...
y si cambia la contraseña.. se pierde la key tambien... a no ser que desencripte todo, y vuelva a cifrar todo con la nueva KEY
tambien pensé:
* Compilo con el propio .exe un archivo donde tenga el KEY y el IV aleatorio para cada aplicacion... pero que sea el mismo KEY e IV para todos los "perfiles" que agregue al programa..
O sea:
PEPE en su .exe tiene 1 KEY y 1 IV para cifrar todos sus perfiles...
JUAN TAMBIEN... pero las 2 KEY y las 2 IV son diferentes...
Entonces para ésto necesito que al iniciar el programa, se genere una KEY y IV y se guarde.. y que nunca mas cambien... porque si cambian.. (para podes descifrar)...
En fin...
Algunos me dijeron: "Guarda en un archivo la key y el IV..."
Pero si viene una persona, y me copia ese archivo y la DATABASE... lo coloca en su aplicacion... y me los lee.....
Conclusión:
Necesito lograr esconder un KEY y un IV FIJO para cada aplicacion.. Pero diferente en cada una de ellas...
Alguien me da unas ideas????