Cita:
utilizo el registro de windows que es mas recomendable tengo creadas mis llaves donde nadie sabe ni encontraran jajajajaa
|
Eso es lo que tu te crees.
Este metodo no es nada seguro, un usuario con conocimientos medios se lo salta en unos minutos.
Un programa como regmon, puede indicar facilmente que claves de registro estas leyendo, e incluso creo recordar que te da los valores obtenidos.
Asi que no solo no es seguro, sino que como ademas dices que lees todas las claves de todos los usuarios, pues eso, de un tirón obtienes todos los login y password.
Lo del locate, pues es un poco más seguro, pero como que tampoco es muy valido. Nunca es buena idea traerte el pass y hacer una comprobación.
Por otro lado, access no es nada seguro, asi que de insertar la contraseña, pasenla por un encriptador, porque sino en 2 minutos se obtienen todos los login y pass.
Si realmente les interesa la seguridad de las contraseñas, hay que elaborarlo un poco más, lo anteriormente expuesto es una seguridad "para niños"
Les voy a dar una idea:
Hagan una sentencia select parametrizada con el login y el pass, y luego comprueben si el query les devuelve alguna fila (con lo que el acceso es correcto) o si por el contrario no les devuelve ninguna fila (login o pass incorrectos).
Ejemplo:
Código Delphi
[-]q1.sql.add('SELECT login FROM usuarios WHERE login=:log AND password=ass');
q1.parambyname('log').asstring:=edit_login.text;
q1.parambyname('pass').asstring:=edit_pass.text;
q1.open;
if q1.recordcount>0 then showmessage('correcto');
Si quieren, encripten el login o el pass (o ambos) en la base de datos, y antes de pasar el dato al parametro hagan de nuevo la encriptación.
Y como apunte personal, no usen access, NUNCA
Saludos