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 Buscar Temas de Hoy Marcar Foros Como Leídos

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


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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 12:40:03
Calcular hash md5 Lepe Trucos 1 10-05-2007 16:11:58
Tipo de datos no coincide Genner SQL 5 08-05-2006 18:14:40
Hash RaulChemical Varios 1 07-09-2004 21:10:11
¿Hash or not Hash? hgiacobone Varios 5 17-07-2003 20:43:26


La franja horaria es GMT +2. Ahora son las 15:25:25.


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