insert into tabla values (password(var_clave)))
guarda algo como : 23eeegfddfg
si quiero hacer un "select clave from tabla "
cual es la sintaxis paraa desenscriptar??????
![Pensando](http://static.forosdelweb.com/fdwtheme/images/smilies/scratchchin.gif)
gracias...
![de acuerdo](http://static.forosdelweb.com/fdwtheme/images/smilies/dedosarriba.png)
| |||
Hola, Citando el manual de MySQL: Cita: http://www.mysql.com/doc/en/Miscella...functions.htmlPASSWORD() encryption is non-reversible Es decir, una vez que lo encriptas con password() ya no hay forma de volverlo a su forma original. Pero esto normalmente no es necesario. No veo necesidad de desencriptar una clave. Si lo que quieres es compararlo con otra cadena, la solucion es encriptar la otra cadena y comparar las cadenas encriptadas. Si lo que quieres es el tipico mecanismo de "Olvide mi password", genera un nuevo pasword, y lo puedes encriptar para guardar. Por cierto, MySQL recomienda no usar esta funcion para las claves de tus aplicaciones, sino usar md5(). Saludos.
__________________ Josemi Aprendiz de mucho, maestro de poco. |
| ||||
gracias por responder, lo que pasa es que tengo un IF donde me ingresan usuario y clave y tenia que verificar si estaba correcto el usuario. lo del MD5 no se lo que es ![]() gracias friends ![]() |
| |||
Si el visual (BASIC, supongo) tiene una funcion password() que encripte usando el mismo algoritmo que el password de MySQL, solo tienes que compararlos valores encriptados. Si no tiene esa funcion, puedes hacer que te haga la comparacion la consulta: SELECT * FROM tabla WHERE clave=password(cadena) Donde cadena es la clave que han introducido. Si el recordset es vacio, es que no hay ningun registro con la clave que han metido. MD5 es un algoritmo de encriptacion similar a password, tampoco se puede desencriptar. Seria lo mismo que he explicado con password(), pero sustituyendo password() por MD5(). La ventaja de MD5 es que posiblemente la funcion este implementad en visual, ya sea nativamente o en alguna libreria o el codigo estara en alguna pagina. Esta implementado incluso en javascript. Saludos.
__________________ Josemi Aprendiz de mucho, maestro de poco. |
| |||
Si, porque realmente no encripta. Calcula un hash de 32 caracteres hexadecimales (128 bits). Se usa como "encriptador" de una sola direccion, no se puede "desencriptar". Ademas, como es un hash varias cadenas pueden generar el mismo hash md5 (pero seria mucha casualidad). Al fin y al cabo, solo permite 2^128 valores, frente a la infinidad de combinacion de cadenas de entrada. Saludos.
__________________ Josemi Aprendiz de mucho, maestro de poco. |