MySQL: ¿Cómo cifrar datos con AES? | Mysql
¿Porqué Cifrar datos en MySQL?
Si trabajamos con datos muy sensibles es necesario cifrar estos datos sobre todo si son contraseñas o numero de tarjetas de bancos.
¿Qué es AES?
AES viene de las siglas Estandar de Encriptación Avanzada ( Advanced Encryption Standar).
AES originalmente se llamo Rijndael que fué el algoritmo ganador tras una convocatoria de algoritmos de cifrado por el Instituto Nacional de Standares y Tecnologias (NIST) entre 1997-2000.
¿Quién desarrollo AES?
AES fue desarrollado por los criptologistas belgas: Vicent Rijmen y Joan Daemen.
¿Cómo funciona AES?
AES basicamente tiene dos funciones AES_ENCRYPT Y AES_DECRYPT estas funciones permiten el cifrado y descifrado de datos utilizando el algoritmo AES. Ambas funciones necesitan de una llave (una contraseña que nosotros definamos) tanto para encriptar como para desencriptar.
¿Cuántos bits usa por defecto AES?
AES por defecto usa un cifrado con una clave de 128 bits pero puede usar hasta 256 bits.
AES a mayor número de bits mayor la seguridad y menor velocidad de trabajo. Pero por ahora 128 bits viene siendo los suficientemente segura y rápida.
¿Cuál es la Sintáxis de AES?
AES_ENCRYPT (cadena,clave)
AES_DECRYPT (cadena,clave)
Ejmplos:
1.- Cifrar:
mysql> UPDATE Cliente
-> SET tarjeta = AES_ENCRYPT ('CARD-4557880279766423', 'secretkey-wT125H')
->WHERE id = 1;
Ver Cifrado:
mysql>SELECT tarjeta FROM cliente WHERE id = 1;
2.- Descifrar:
mysql> SELECT AES_DECRYPT (tarjeta, 'secretkey-wT125H')
FROM cliente WHERE id = 1 ;
Publicar un comentario