1*62c56f98SSadaf EbrahimiCMAC self test 2*62c56f98SSadaf Ebrahimimbedtls_cmac_self_test: 3*62c56f98SSadaf Ebrahimi 4*62c56f98SSadaf EbrahimiCMAC null arguments 5*62c56f98SSadaf Ebrahimidepends_on:MBEDTLS_AES_C 6*62c56f98SSadaf Ebrahimimbedtls_cmac_null_args: 7*62c56f98SSadaf Ebrahimi 8*62c56f98SSadaf EbrahimiCMAC init #1 AES-128: OK 9*62c56f98SSadaf Ebrahimidepends_on:MBEDTLS_AES_C 10*62c56f98SSadaf Ebrahimimbedtls_cmac_setkey:MBEDTLS_CIPHER_AES_128_ECB:128:0 11*62c56f98SSadaf Ebrahimi 12*62c56f98SSadaf EbrahimiCMAC init #2 AES-192: OK 13*62c56f98SSadaf Ebrahimidepends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH 14*62c56f98SSadaf Ebrahimimbedtls_cmac_setkey:MBEDTLS_CIPHER_AES_192_ECB:192:0 15*62c56f98SSadaf Ebrahimi 16*62c56f98SSadaf EbrahimiCMAC init #3 AES-256: OK 17*62c56f98SSadaf Ebrahimidepends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH 18*62c56f98SSadaf Ebrahimimbedtls_cmac_setkey:MBEDTLS_CIPHER_AES_256_ECB:256:0 19*62c56f98SSadaf Ebrahimi 20*62c56f98SSadaf EbrahimiCMAC init #4 3DES: OK 21*62c56f98SSadaf Ebrahimidepends_on:MBEDTLS_DES_C 22*62c56f98SSadaf Ebrahimimbedtls_cmac_setkey:MBEDTLS_CIPHER_DES_EDE3_ECB:192:0 23*62c56f98SSadaf Ebrahimi 24*62c56f98SSadaf EbrahimiCMAC init #5 AES-224: bad key size 25*62c56f98SSadaf Ebrahimidepends_on:MBEDTLS_AES_C 26*62c56f98SSadaf Ebrahimimbedtls_cmac_setkey:MBEDTLS_CIPHER_AES_128_ECB:224:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA 27*62c56f98SSadaf Ebrahimi 28*62c56f98SSadaf EbrahimiCMAC init #6 AES-0: bad key size 29*62c56f98SSadaf Ebrahimidepends_on:MBEDTLS_AES_C 30*62c56f98SSadaf Ebrahimimbedtls_cmac_setkey:MBEDTLS_CIPHER_AES_128_ECB:0:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA 31*62c56f98SSadaf Ebrahimi 32*62c56f98SSadaf EbrahimiCMAC init Camellia-128: wrong cipher 33*62c56f98SSadaf Ebrahimidepends_on:MBEDTLS_CAMELLIA_C 34*62c56f98SSadaf Ebrahimimbedtls_cmac_setkey:MBEDTLS_CIPHER_CAMELLIA_128_ECB:128:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA 35*62c56f98SSadaf Ebrahimi 36*62c56f98SSadaf EbrahimiCMAC init Camellia-192: wrong cipher 37*62c56f98SSadaf Ebrahimidepends_on:MBEDTLS_CAMELLIA_C 38*62c56f98SSadaf Ebrahimimbedtls_cmac_setkey:MBEDTLS_CIPHER_CAMELLIA_192_ECB:192:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA 39*62c56f98SSadaf Ebrahimi 40*62c56f98SSadaf EbrahimiCMAC init Camellia-256: wrong cipher 41*62c56f98SSadaf Ebrahimidepends_on:MBEDTLS_CAMELLIA_C 42*62c56f98SSadaf Ebrahimimbedtls_cmac_setkey:MBEDTLS_CIPHER_CAMELLIA_256_ECB:256:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA 43*62c56f98SSadaf Ebrahimi 44*62c56f98SSadaf EbrahimiCMAC init #8 ARIA-128: wrong cipher 45*62c56f98SSadaf Ebrahimidepends_on:MBEDTLS_ARIA_C 46*62c56f98SSadaf Ebrahimimbedtls_cmac_setkey:MBEDTLS_CIPHER_ARIA_128_ECB:128:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA 47*62c56f98SSadaf Ebrahimi 48*62c56f98SSadaf EbrahimiCMAC init #8 ARIA-192: wrong cipher 49*62c56f98SSadaf Ebrahimidepends_on:MBEDTLS_ARIA_C 50*62c56f98SSadaf Ebrahimimbedtls_cmac_setkey:MBEDTLS_CIPHER_ARIA_192_ECB:192:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA 51*62c56f98SSadaf Ebrahimi 52*62c56f98SSadaf EbrahimiCMAC init #8 ARIA-256: wrong cipher 53*62c56f98SSadaf Ebrahimidepends_on:MBEDTLS_ARIA_C 54*62c56f98SSadaf Ebrahimimbedtls_cmac_setkey:MBEDTLS_CIPHER_ARIA_256_ECB:256:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA 55*62c56f98SSadaf Ebrahimi 56*62c56f98SSadaf EbrahimiCMAC Single Blocks #1 - Empty block, no updates 57*62c56f98SSadaf Ebrahimidepends_on:MBEDTLS_AES_C 58*62c56f98SSadaf Ebrahimimbedtls_cmac_multiple_blocks:MBEDTLS_CIPHER_AES_128_ECB:"2b7e151628aed2a6abf7158809cf4f3c":128:16:"":-1:"":-1:"":-1:"":-1:"bb1d6929e95937287fa37d129b756746" 59*62c56f98SSadaf Ebrahimi 60*62c56f98SSadaf EbrahimiCMAC Single Blocks #2 - Single 16 byte block 61*62c56f98SSadaf Ebrahimidepends_on:MBEDTLS_AES_C 62*62c56f98SSadaf Ebrahimimbedtls_cmac_multiple_blocks:MBEDTLS_CIPHER_AES_128_ECB:"2b7e151628aed2a6abf7158809cf4f3c":128:16:"6bc1bee22e409f96e93d7e117393172a":16:"":-1:"":-1:"":-1:"070a16b46b4d4144f79bdd9dd04a287c" 63*62c56f98SSadaf Ebrahimi 64*62c56f98SSadaf EbrahimiCMAC Single Blocks #3 - Single 64 byte block 65*62c56f98SSadaf Ebrahimidepends_on:MBEDTLS_AES_C 66*62c56f98SSadaf Ebrahimimbedtls_cmac_multiple_blocks:MBEDTLS_CIPHER_AES_128_ECB:"2b7e151628aed2a6abf7158809cf4f3c":128:16:"6bc1bee22e409f96e93d7e117393172aae2d8a571e03ac9c9eb76fac45af8e5130c81c46a35ce411e5fbc1191a0a52eff69f2445df4f9b17ad2b417be66c3710":64:"":-1:"":-1:"":-1:"51f0bebf7e3b9d92fc49741779363cfe" 67*62c56f98SSadaf Ebrahimi 68*62c56f98SSadaf EbrahimiCMAC Multiple Blocks #1 - Multiple 8 byte blocks 69*62c56f98SSadaf Ebrahimidepends_on:MBEDTLS_AES_C 70*62c56f98SSadaf Ebrahimimbedtls_cmac_multiple_blocks:MBEDTLS_CIPHER_AES_128_ECB:"2b7e151628aed2a6abf7158809cf4f3c":128:16:"6bc1bee22e409f96":8:"e93d7e117393172a":8:"":-1:"":-1:"070a16b46b4d4144f79bdd9dd04a287c" 71*62c56f98SSadaf Ebrahimi 72*62c56f98SSadaf EbrahimiCMAC Multiple Blocks #2 - Multiple 16 byte blocks 73*62c56f98SSadaf Ebrahimidepends_on:MBEDTLS_AES_C 74*62c56f98SSadaf Ebrahimimbedtls_cmac_multiple_blocks:MBEDTLS_CIPHER_AES_128_ECB:"2b7e151628aed2a6abf7158809cf4f3c":128:16:"6bc1bee22e409f96e93d7e117393172a":16:"ae2d8a571e03ac9c9eb76fac45af8e51":16:"30c81c46a35ce411e5fbc1191a0a52ef":16:"f69f2445df4f9b17ad2b417be66c3710":16:"51f0bebf7e3b9d92fc49741779363cfe" 75*62c56f98SSadaf Ebrahimi 76*62c56f98SSadaf EbrahimiCMAC Multiple Blocks #3 - Multiple variable sized blocks 77*62c56f98SSadaf Ebrahimidepends_on:MBEDTLS_AES_C 78*62c56f98SSadaf Ebrahimimbedtls_cmac_multiple_blocks:MBEDTLS_CIPHER_AES_128_ECB:"2b7e151628aed2a6abf7158809cf4f3c":128:16:"6bc1bee22e409f96":8:"e93d7e117393172aae2d8a571e03ac9c":16:"9eb76fac45af8e5130c81c46a35ce411e5fbc1191a0a52ef":24:"f69f2445df4f9b17ad2b417be66c3710":16:"51f0bebf7e3b9d92fc49741779363cfe" 79*62c56f98SSadaf Ebrahimi 80*62c56f98SSadaf EbrahimiCMAC Multiple Blocks #4 - Multiple 8 byte blocks with gaps 81*62c56f98SSadaf Ebrahimidepends_on:MBEDTLS_AES_C 82*62c56f98SSadaf Ebrahimimbedtls_cmac_multiple_blocks:MBEDTLS_CIPHER_AES_128_ECB:"2b7e151628aed2a6abf7158809cf4f3c":128:16:"":0:"6bc1bee22e409f96":8:"":0:"e93d7e117393172a":8:"070a16b46b4d4144f79bdd9dd04a287c" 83*62c56f98SSadaf Ebrahimi 84*62c56f98SSadaf EbrahimiCMAC Multiple Operations, same key #1 - Empty, empty 85*62c56f98SSadaf Ebrahimidepends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH 86*62c56f98SSadaf Ebrahimimbedtls_cmac_multiple_operations_same_key:MBEDTLS_CIPHER_AES_192_ECB:"8e73b0f7da0e6452c810f32b809079e562f8ead2522c6b7b":192:16:"":-1:"":-1:"":-1:"d17ddf46adaacde531cac483de7a9367":"":-1:"":-1:"":-1:"d17ddf46adaacde531cac483de7a9367" 87*62c56f98SSadaf Ebrahimi 88*62c56f98SSadaf EbrahimiCMAC Multiple Operations, same key #2 - Empty, 64 byte block 89*62c56f98SSadaf Ebrahimidepends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH 90*62c56f98SSadaf Ebrahimimbedtls_cmac_multiple_operations_same_key:MBEDTLS_CIPHER_AES_192_ECB:"8e73b0f7da0e6452c810f32b809079e562f8ead2522c6b7b":192:16:"":-1:"":-1:"":-1:"d17ddf46adaacde531cac483de7a9367":"6bc1bee22e409f96e93d7e117393172aae2d8a571e03ac9c9eb76fac45af8e5130c81c46a35ce411e5fbc1191a0a52eff69f2445df4f9b17ad2b417be66c3710":64:"":-1:"":-1:"a1d5df0eed790f794d77589659f39a11" 91*62c56f98SSadaf Ebrahimi 92*62c56f98SSadaf EbrahimiCMAC Multiple Operations, same key #3 - variable byte blocks 93*62c56f98SSadaf Ebrahimidepends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH 94*62c56f98SSadaf Ebrahimimbedtls_cmac_multiple_operations_same_key:MBEDTLS_CIPHER_AES_192_ECB:"8e73b0f7da0e6452c810f32b809079e562f8ead2522c6b7b":192:16:"6bc1bee22e409f96e93d7e117393172aae2d8a571e03ac9c9eb76fac45af8e51":32:"30c81c46a35ce411e5fbc1191a0a52eff69f2445df4f9b17ad2b417be66c3710":32:"":-1:"a1d5df0eed790f794d77589659f39a11":"6bc1bee22e409f96e93d7e117393172aae2d8a571e03ac9c9eb76fac45af8e51":32:"30c81c46a35ce411e5fbc1191a0a52eff69f2445df4f9b17ad2b417be66c3710":32:"":-1:"a1d5df0eed790f794d77589659f39a11" 95*62c56f98SSadaf Ebrahimi 96