Page 1 of 1
Existe MD5 en Harbour ?
Posted: Thu Jan 21, 2010 1:52 pm
by sjingo
Estimados amigos
Primeramente desearles un excelente 2010 a todos.
Estoy usando la función MD5() de Mysql para encriptar las contraseñas en la tabla de usuarios. Al momento de validar el campo pasword quiero enviar ese dato encriptado con MD5 desde mi aplicación al servidor Mysql para agregarle un poco más de seguridad en el trayecto.
Aunque si no existe tendré que enviar el pasword tal cual y sea el Mysql que haga la operación MD5. Cualuquier comentario es bienvenido.
Saludos
Marcelo Jingo
Re: Existe MD5 en Harbour ?
Posted: Thu Jan 21, 2010 5:09 pm
by sjingo
Mirando el manual de FW encontré la función nStrHash() que también podría ayudarme, pero al linkear me sale Unresolved External '_HB_FUN_NSTRHASH', así que busqué el código fuente en SOURCE\FUNCTION\Hash.c, copie el código dentro de mi PRG entre #pragma BEGINDUMP y #pragma ENDDUMP ; no hubo errores de compilación, pero al linkear sigue saliendo el mismo error.
Alguna pista?
Un Saludo
Marcelo Jingo
Re: Existe MD5 en Harbour ?
Posted: Thu Jan 21, 2010 6:27 pm
by vailtom
With Harbour:
With xHarbour:
Re: Existe MD5 en Harbour ?
Posted: Thu Jan 21, 2010 8:20 pm
by sjingo
Gracias Vailtom Renato
Funciona perfecto.
Por saber un poco más: cómo se debe usar la función hb_Hash(), lo probé así:
? hb_hash("test")
pero obtengo el error : Bound Error:array dimension
Un saludo
Marcelo Jingo
Re: Existe MD5 en Harbour ?
Posted: Thu Jan 21, 2010 8:26 pm
by Lautaro
Marcelo,
hb_hash no es para encriptar datos, es para hacer hash de datos, es una especie de array disperso.
Saludos,
Lautaro Moreira
Re: Existe MD5 en Harbour ?
Posted: Thu Jan 21, 2010 9:44 pm
by sjingo
Osea......?
Por favor un ejemplo..
Quiero hacerlo igual como lo hago con md5: con Mysql cifro el campo que guarda la clave usando md5(´miclave') dándome un valor de 32 caracteres, luego en mi aplicación cifro mediante hb_md5('otraclave') la clave introducida para compararla con la de la Base de datos. Esto funciona OK, pero tengo entendido que hash es más seguro, así que quiero hacer lo mismo porque Mysql tiene la función sha('miclave') para cifrar con hash.
Gracias Lautaro
Un saludo
Marcelo Jingo
Re: Existe MD5 en Harbour ?
Posted: Thu Jan 21, 2010 9:56 pm
by Lautaro
Marcel,
Hash no tiene nada que ver con sha, sha es una forma asimetrica de encriptacion que es la que utiliza tecnicas hash para el proceso de encriptado y hash como te decia es una forma de array.
Desconozco si con harbour puedes encriptar usando sha.
Dentro de lo que se de mysql sha solo funciona si tienes activo ssl para la coneccion, pero no estoy seguro.
Saludos,
Lautaro Moreira
Re: Existe MD5 en Harbour ?
Posted: Thu Jan 21, 2010 10:46 pm
by sjingo
Lautaro
Gracias por la aclaración.
Me quedo con hb_md5("clave"), que al fin y al cabo soluciona el motivo de mi intervención.
Gracias también a Vailton
Saludos cordiales
Marcelo Jingo