Примеры

Mcrypt можно использовать для шифрования и дешифрования с использованием вышеупомянутых шифров. Если модуль собран с libmcrypt-2.2.x, четыре важных команды mcrypt (mcrypt_cfb(), mcrypt_cbc(), mcrypt_ecb() и mcrypt_ofb()) могут работать в обоих режимах, именуемых MCRYPT_ENCRYPT и MCRYPT_DECRYPT соответственно.

Если модуль собран с libmcrypt 2.4.x или 2.5.x, эти функции также будут доступны, но рекомендуется использовать более продвинутые функции.

Пример #1 Шифрование с помощью AES с 256-битным ключем для версии 2.4.x и выше в режиме CBC

<?php
    $key 
= hash('sha256', 'this is a secret key', true);
    
$input = "Let us meet at 9 o'clock at the secret place.";
    
    
$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);
?>
Этот пример вернет зашифрованные данные в строке $encrypted_data. Более полные примеры смотрите в описании функции mcrypt_module_open().