Mcrypt puede ser utilizada para el cifrado y descifrado empleando los cifradores
arriba mencionados. Si se enlazó con libmcrypt-2.2.x, los
cuatro comandos importantes de mcrypt (mcrypt_cfb(),
mcrypt_cbc(), mcrypt_ecb(),
y mcrypt_ofb()) puede operar en ambos modos,
los cuales son denominados MCRYPT_ENCRYPT
y
MCRYPT_DECRYPT
, respectivamente.
Si se enlazó con libmcrypt 2.4.x o 2.5.x, estas funciones todavía están disponibles, pero es recomendable que se utilicen las funciones avanzadas.
Ejemplo #1 Cifrar un valor de entrada con AES con una clave de 256 bits bajo 2.4.x y superiores en modo CBC
<?php
$clave = hash('sha256', 'esta es una clave secreta', true);
$entrada = "Encontrémonos a las 9 en punto en el escondite.";
$td = mcrypt_module_open('rijndael-128', '', 'cbc', '');
$iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td), MCRYPT_DEV_URANDOM);
mcrypt_generic_init($td, $clave, $iv);
$datos_encriptados = mcrypt_generic($td, $entrada);
mcrypt_generic_deinit($td);
mcrypt_module_close($td);
?>