1--TEST--
2Crypto\CMAC::digest basic usage.
3--SKIPIF--
4<?php
5if (!class_exists('Crypto\CMAC' ))
6	die("Skip: CMAC is not supported by OpenSSL");
7?>
8--FILE--
9<?php
10
11$key = pack('H*', '2b7e151628aed2a6abf7158809cf4f3c');
12
13$msg1 = '';
14
15$msg2 = pack('H*', '6bc1bee22e409f96e93d7e117393172a');
16
17$msg3 = pack('H*',
18	'6bc1bee22e409f96e93d7e117393172a' .
19	'ae2d8a571e03ac9c9eb76fac45af8e51' .
20	'30c81c46a35ce411');
21
22$msg4 = pack('H*',
23	'6bc1bee22e409f96e93d7e117393172a' .
24	'ae2d8a571e03ac9c9eb76fac45af8e51' .
25	'30c81c46a35ce411e5fbc1191a0a52ef' .
26	'f69f2445df4f9b17ad2b417be66c3710');
27
28
29function crypto_test_cmac_aes_128($msg) {
30	global $key;
31
32	$cmac = new Crypto\CMAC($key, 'AES-128-CBC');
33	$cmac->update($msg);
34	echo bin2hex($cmac->digest()) . "\n";
35}
36
37crypto_test_cmac_aes_128($msg1);
38crypto_test_cmac_aes_128($msg2);
39crypto_test_cmac_aes_128($msg3);
40crypto_test_cmac_aes_128($msg4);
41echo "SUCCESS\n";
42?>
43--EXPECT--
44bb1d6929e95937287fa37d129b756746
45070a16b46b4d4144f79bdd9dd04a287c
46dfa66747de9ae63030ca32611497c827
4751f0bebf7e3b9d92fc49741779363cfe
48SUCCESS
49