xref: /PHP-7.0/ext/mcrypt/tests/mcrypt_cfb.phpt (revision 7810659c)
1--TEST--
2mcrypt_cfb
3--SKIPIF--
4<?php if (!extension_loaded("mcrypt")) print "skip"; ?>
5--FILE--
6<?php
7$key      = "0123456789012345";
8$secret   = "PHP Testfest 2008";
9$cipher   = MCRYPT_RIJNDAEL_128;
10
11$iv       = mcrypt_create_iv(mcrypt_get_iv_size($cipher, MCRYPT_MODE_CFB), MCRYPT_RAND);
12$enc_data = mcrypt_encrypt($cipher, $key, $secret, MCRYPT_MODE_CFB, $iv);
13
14// we have to trim as AES rounds the blocks and decrypt doesnt detect that
15echo trim(mcrypt_decrypt($cipher, $key, $enc_data, MCRYPT_MODE_CFB, $iv)) . "\n";
16
17// a warning must be issued if we don't use a IV on a AES cipher, that usually requires an IV
18var_dump(mcrypt_decrypt($cipher, $key, $enc_data, MCRYPT_MODE_CFB));
19
20--EXPECTF--
21PHP Testfest 2008
22
23Warning: mcrypt_decrypt(): Encryption mode requires an initialization vector of size 16 in %s on line %d
24bool(false)
25