Según leí en algún lugar la forma correcta de hacerlo es la siguiente:
Tabla
USUARIO (usuario, hash_md5, otros_campos)
Crear un usuario:- Pides nombre de usuario
- Pides contraseña
- Calculas md5(nombre_de_usuario + contraseña)
- Guardas el resultado en la base de datos
Login:- Pides nombre de usuario
- Pides contraseña
- Calculas md5(nombre_de_usuario + contraseña)
- Comparas el resultado con lo que tengas en la base de datos