1--TEST--
2mcrypt_decrypt
3--SKIPIF--
4<?php if (!extension_loaded("mcrypt")) print "skip"; ?>
5--FILE--
6<?php
7$key      = "0123456789012345";
8$secret   = "PHP Testfest 2008";
9$mode     = MCRYPT_MODE_CBC;
10$cipher   = MCRYPT_RIJNDAEL_128;
11
12$iv       = mcrypt_create_iv(mcrypt_get_iv_size($cipher, $mode), MCRYPT_RAND);
13$enc_data = mcrypt_encrypt($cipher, $key, $secret, $mode, $iv);
14
15// we have to trim as AES rounds the blocks and decrypt doesnt detect that
16echo trim(mcrypt_decrypt($cipher, $key, $enc_data, $mode, $iv)) . "\n";
17
18// a warning must be issued if we don't use a IV on a AES cipher, that usually requires an IV
19var_dump(mcrypt_decrypt($cipher, $key, $enc_data, MCRYPT_MODE_CBC));
20
21var_dump(mcrypt_decrypt(MCRYPT_BLOWFISH, "FooBar", $enc_data, MCRYPT_MODE_CBC, $iv));
22--EXPECTF--
23Deprecated: Function mcrypt_get_iv_size() is deprecated in %s%emcrypt_decrypt.php on line 7
24
25Deprecated: Function mcrypt_create_iv() is deprecated in %s%emcrypt_decrypt.php on line 7
26
27Deprecated: Function mcrypt_encrypt() is deprecated in %s%emcrypt_decrypt.php on line 8
28
29Deprecated: Function mcrypt_decrypt() is deprecated in %s%emcrypt_decrypt.php on line 11
30PHP Testfest 2008
31
32Deprecated: Function mcrypt_decrypt() is deprecated in %s%emcrypt_decrypt.php on line 14
33
34Warning: mcrypt_decrypt(): Encryption mode requires an initialization vector of size 16 in %s on line %d
35bool(false)
36
37Deprecated: Function mcrypt_decrypt() is deprecated in %s%emcrypt_decrypt.php on line 16
38
39Warning: mcrypt_decrypt(): Received initialization vector of size 16, but size 8 is required for this encryption mode in %s on line %d
40bool(false)
41