Encriptación en MySql

systemx
23 de Marzo del 2006
Hola, tengo un pequeño problema en el proyecto que estoy haciendo, y es el siguiente:
- Resulta que estoy utilizando la función MD5 ('str'), para encriptar passwords, con la siguiente estructura:
stmt.executeUpdate("INSERT INTO Persona (ID, Password) VALUES ('"+ID+"',MD5("+Password+"); (estoy trabajando en java)
- Pero el problema me viene a la hora de que un usuario entre en el sistema, ya que tendria que codificar el password que mete con MD5, y posteriormente compararlo con el que esta ya codificado en la base de datos. Puedo rescatar la información perfectamente de la base de datos, pero no se como comparar los 2 passwords codificados. Para conseguir que el password codificado en la base de datos , este en un string hago lo siguiente:

rs = stmt.executeQuery("SELECT Password FROM Persona WHERE ID='" + ID + "'");
Resultado = rs.getString("Password");

Vale, hasta aqui todo bien, a continuación codifico el Password que introduce el usuario para poder compararlo con el que existe en la base de datos:

rs2 = stmt.executeQuery("SELECT MD5('"+Pass+"')");

Pero ahora, ¿como los comparo?, es decir, ¿como meto eso en un string?No se como usar la funcion getString en este caso, ya que no estas resctando la informacion de una tabla.

Por favor, es importante, gracias.

pedro
23 de Marzo del 2006
no se si sera un poco tarde contestarle pero hice algo parecido....
recoge el password del formulario que envia el usuario con
String clave = request.getParameter("contraseña");
donde contraseña es el nombre del campo de texto donde recojo la contraseña...

luego lo comparo con la cadena que tengo en la base de datos

seria
ResultSet rs = stmt.executeQuery("select * from nombre_tabla where clave = md5('"+clave+"') as clave ");

lo que hace es transformar la contraseña que entra el usuario en una cadena md5 y luego compararlo con el que hay en la base de datos ...

si acaso necesita algo mas escribame

kasar
23 de Marzo del 2006
alguien me podria ayudar, tengo 5633 registrso y necesito pasarlos a MD5 y el dbms seria mysql.
¿hay algun software o script que me facilite este proceso?