Cuando trabajamos con información sensible no podemos arriesgar los datos dejando en texto plano, para eso debemos de encriptar y cuando necesitamos verificar o procesar os datos debemos desencriptar.
Esta práctica ya se debería tener como norma ya que si en caso de que personas no deseadas tengan acceso a tu base de datos les sea inútil los datos robados del servidor.
A continuación les muestro las funciones para poder lograr esto:

 

#webdebe.com
$clave  = 'Mientras mas larga sea esta cadena va a ser mejor, un poco de spam, mira en webdebe.com =), encriptar y desencriptar con php muy facil de implementar muchas gracias!!!';

$method = 'aes-256-cbc';

$iv = base64_decode("D97l4yxYMqhrzy3ZKf+cPw==");

 $encriptar = function ($valor) use ($method, $clave, $iv) {
     return openssl_encrypt ($valor, $method, $clave, false, $iv);
 };
 
 $desencriptar = function ($valor) use ($method, $clave, $iv) {
     $encrypted_data = base64_decode($valor);
     return openssl_decrypt($valor, $method, $clave, false, $iv);
 };
 
 $getIV = function () use ($method) {
     return base64_encode(openssl_random_pseudo_bytes(openssl_cipher_iv_length($method)));
 };


Muy importante es cambiar el texto que va en la variable $clave y deben generar otro valor para la variable $iv. En todo esto hay dos funciones uno que es para encriptar y otra para desencriptar con php.
A continuación les muestro como se utiliza el código 

$dato = "Aqui es donde guardamos la informacion sensible para poder procesar";

$dato_encriptado = $encriptar($dato);

$dato_desencriptado = $desencriptar($dato_encriptado);

echo 'Dato encriptado: '. $dato_encriptado . '
';
echo 'Dato desencriptado: '. $dato_desencriptado . '
';
echo "IV generado: " . $getIV();

El resultado de esto quedaria asi

 

Dato encriptado: miDAV14YnxZReq3KHpPcGCUjwfCCZJ/z2quMhASPT6Mxe9m/h+p1SmTg0i3cy/7heAd33jWAE2yKGOenIzIR14pueRzInXpd+Mydp9mtF6A=
Dato desencriptado: Aqui es donde guardamos la informacion sensible para poder procesar
IV generado: HE8OY+KiRkxxhzUfrxv9Lw==


 




Deja un Comentario

Tu dirección de correo no sera publicado. Los campos obligatorios están marcados con *

Nombre *
Correo *
Web