Mcrypt permet de chiffrer et de déchiffrer en utilisant les méthodes
mentionnées ci-dessus. Si vous utilisez libmcrypt-2.2.x,
les 4 commandes importantes
(mcrypt_cfb(), mcrypt_cbc(),
mcrypt_ecb() et mcrypt_ofb())
peuvent toutes opérer en mode MCRYPT_ENCRYPT
et
MCRYPT_DECRYPT
.
Si vous avez compilé PHP avec libmcrypt 2.4.x ou 2.5.x, ces fonctions sont toujours disponibles, mais il est vivement conseillé d'utiliser les nouvelles fonctions avancées.
Exemple #1 Chiffrement d'une valeur avec AES avec une clé 256-bit sous 2.4.x et supérieur, en mode CBC
<?php
$key = hash('sha256', 'this is a secret key', true);
$input = "Rendez-vous à 9 heures, dans notre planque.";
$td = mcrypt_module_open('rijndael-128', '', 'cbc', '');
$iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td), MCRYPT_DEV_URANDOM);
mcrypt_generic_init($td, $key, $iv);
$encrypted_data = mcrypt_generic($td, $input);
mcrypt_generic_deinit($td);
mcrypt_module_close($td);
?>