encriptar contraseñas

Páginas: 6 (1464 palabras) Publicado: 29 de julio de 2013
SELECT password FROM tabla WHERE password=MD5($password) LIMIT 0, 1


passwordNew = generarPassword();
passwordNewEncriptada= MD5(passwordNew);
insertar_en_bd(passwordNewEncriptada);
envio_mail(passNew)
y para saber si el password es correcto en la parte de logueo es asi:

password= passwordingresadaporelusuario;
passwordMD5 = MD5(password);
si (passwordAlmacenada = passwordMD5)inicia sesion
sino
contraseña incorrecta


12.9.2. Funciones de cifrado
Las funciones en esta sección cifran y descifran valores. Si quiere almacenar resultados de una función de cifrado que puede contaner valores arbitrarios de bytes, use una columna BLOB en lugar de CHAR o VARCHAR para evitar problemas potenciales con eliminación de espacios finales que pueden cambiar los valores de datos.AES_ENCRYPT(str,key_str) , AES_DECRYPT(crypt_str,key_str)
Estas funciones permiten el cifrado y descifrado de datos usando el algoritmo oficial AES (Advanced Encryption Standard), conocido anteriormente como "Rijndael." Se usa un cifrado con una clave de 128-bit, pero puede ampliarlo hasta 256 bits modificando las fuentes. Elegimos 128 porque es mucho más rápido y de momento es suficientementeseguro.
Los argumentos de entrada pueden ser de cualquier longitud. Si algún argumento es NULL, el resultado de esta función también es NULL.
Debido a que AES es un algoritmo a nivel de bloques, se usa relleno para cadenas de longitud impar y así la longitud de la cadena resultante puede calcularse como 16 * (trunc(string_length / 16) + 1).
Si AES_DECRYPT() detecata datos inválidos o rellenoincorrecto, retorna NULL. Sin embargo, es posible paraAES_DECRYPT() retornar un valor no NULL (posiblemente basura) si los datos de entrada o la clave son inválidos.
Puede usar la función AES para almacenar datos de forma cifrada modificando sus consultas:
INSERT INTO t VALUES (1,AES_ENCRYPT('text','password'));
Puede obtener incluso mejor seguridad si no transfiere la clave a través de la conexiónpara cada consulta, que puede hacerse almacenando la clave en una variable del servidor al hacer la conexión. Por ejemplo:
SELECT @password:='my password';
INSERT INTO t VALUES (1,AES_ENCRYPT('text',@password));
AES_ENCRYPT() y AES_DECRYPT() pueden considerarse las funciones de cifrado criptográficamente más seguras disponibles en MySQL.
DECODE(crypt_str,pass_str)
Descifra la cadenacifrada crypt_str usando pass_str como contraseña. crypt_str debe ser una cadena retornada de ENCODE().
ENCODE(str,pass_str)
Cifra str usando pass_str como contraseña. Para descifrar el resultado, use DECODE().
El resultado es una cadena binaria de la misma longitud que str. Si quiere guardarlo en una columna, use una columna de tipo BLOB .
DES_DECRYPT(crypt_str[,key_str])
Descifra una cadena cifradacon DES_ENCRYPT(). En caso de error, esta función retorna NULL.
Tenga en cuenta que esta función funciona sólo si MySQL se configura con soporte SSL. Consulte Sección 5.7.7, “Usar conexiones seguras”.
Si no se da argumento key_str, DES_DECRYPT() examina el primer byte de la cadena cifrada para determinar el número de clave DES que se usó para cifrar la cadena original, y luego lee la clave delfichero clave DES para descifrar el mensaje. Para que esto funcione, el usuario debe tener el privilegio SUPER. El fichero clave puede especificarse con la opción del servidor --des-key-file .
Si le pasa a esta función el argumento key_str , esta cadena se usa como la clave para descifrar el mensaje.
Si el argumento crypt_str no parece una cadena cifrada, MySQL retorna crypt_str.DES_ENCRYPT(str[,(key_num|key_str)])
Cifra la cadena con la clave dada usando el algoritmo triple-DES. En caso de error, retorna NULL.
Tenga en cuenta que esta función funciona sólo si MySQL se configura con soporte SSL. Consulte Sección 5.7.7, “Usar conexiones seguras”.
La clave de cifrado a usar se elige basada en el segundo argumento de DES_ENCRYPT(), si se ha dado uno:
Argumento
Descripción
Sin...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • encriptado
  • Encriptar
  • encriptamiento
  • Encriptamiento
  • Contraseña
  • CONTRASENA
  • Contrasenas
  • Contraseña

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS