Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 07-11-2015
marvajes marvajes is offline
Registrado
NULL
 
Registrado: nov 2015
Posts: 6
Poder: 0
marvajes Va por buen camino
Question Comparacion de Hash MD5 Delphi-Oracle no coincide

Hola Foro,
Disculpen la consulta, estoy desarrollando un login en Delphi 2010. Utilizo los componentes Unidac, con una conexión directa a Oracle.
En la base de datos tengo una tabla Usuarios con campos(codigo_usuario,usuario,contrasena,estado)
el campo contrasena almacena el hash en md5 de la contrasena.

Tengo la idea de consultar la tabla desde la aplicacion, comparando usuario y contrasena, para brindarle acceso al usuario o negarse lo. El problema que tengo, radica en la comparación del hash.
Tengo el siguiente código
Tengo un solo usuario en la tabla usuario, la contrasena es 12345 y el hash es 827ccb0eea8a706c4c34a16891f84e7b

Código Delphi [-]
    Hash_contrasena:=CalcHash2(Texto_Contrasena.Text,haMD5); // contrasena ingresada 12345 hash generado      //827ccb0eea8a706c4c34a16891f84e7b

   // ShowMessage(Hash_contrasena);
    //Lanzando consulta para comprobar que el usuario y contraseña ingresados existen en la base de datos
    // Y verificar que el usuario esta activo.
     Consulta.SQL.Clear;
     Consulta.SQL.Add('SELECT USUARIO,CONTRASENA,ESTADO FROM USUARIO WHERE USUARIO=:INGRESO_USUARIO');
     Consulta.ParamByName('INGRESO_USUARIO').AsString:=Texto_usuario.Text;
     //Consulta.ParamByName('INGRESO_CONTRASENA').AsString:=Hash_contrasena; Comentada por problemas del hash que mencione
     try
       Consulta.Open;
       TEXTO_USUARIO.Text:=Consulta.FieldByName('CONTRASENA').AsString; // Resultado muestra este hash //b66d99aa0d2457fe5bccf2232a1c3140
     finally

     end;

No entiendo a que se deba este problema: En conclusión.
Hash en Base de datos: 827ccb0eea8a706c4c34a16891f84e7b
Hash Generado con CalcHash2 : 827ccb0eea8a706c4c34a16891f84e7b
Consulta para obtener el hash de la base de datos: b66d99aa0d2457fe5bccf2232a1c3140

Cual creen que sea la razón de este problema, sera que se debe a la magnitud de la cadena extraída?
Ya había intentado comparar el hash directamente contra la base de datos, pero entonces ya no devuelve nada.
Muchísimas gracias por su ayuda y aporte.
Saludos.
Responder Con Cita
  #2  
Antiguo 13-11-2015
marvajes marvajes is offline
Registrado
NULL
 
Registrado: nov 2015
Posts: 6
Poder: 0
marvajes Va por buen camino
Problema de commit

Hola, perdonen por haber realizado la pregunta, el problema era el siguiente. Tengo 2 usuarios con diferentes roles, uno puede realizar update sobre la tabla y el otro solo puede hacer select y lo que sucedia es que cuando realizaba un cambio en la sesion de un usuario se reflejaban los cambios sin embargo cuando el otro usuario (usuarios a nivel de bd)intentaba autenticarse, aun conservaba el registro anterior. La solución un Commit.
Saludos.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Tablas Hash godel Lazarus, FreePascal, Kylix, etc. 3 19-02-2008 11:40:03
Calcular hash md5 Lepe Trucos 1 10-05-2007 15:11:58
Tipo de datos no coincide Genner SQL 5 08-05-2006 17:14:40
Hash RaulChemical Varios 1 07-09-2004 20:10:11
¿Hash or not Hash? hgiacobone Varios 5 17-07-2003 19:43:26


La franja horaria es GMT +2. Ahora son las 18:34:09.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi