#include <stdio.h>
#include <string.h>
#include "aes_kdf.h"
////////////////////////////////////////////////////////////////////////////////
void dump(const char *label,uint8 *dt,int len)
{
int i;
printf("%s",label);
for(i=0;i<len;i++)
{
printf("%02x",*dt++);
}
printf("\n");
}
////////////////////////////////////////////////////////////////////////////////
int main(int argc, char const* argv[])
{
char msg1[] = "0123456789012345";
char msg2[] = "1123456789012345";
char msg3[] = "0123456789112345";
char msg4[] = "0123456789012345" "0123456789012345";
uint mac[4];
uint8 key[] = { 0x12, 0x34, 0x56, 0x78, 0xab, 0xcd, 0x56, 0x78,
0x00, 0x34, 0x00, 0x78, 0x00, 0x00, 0x56, 0x78,};
#define DUMP(msg) \
printf("%-30s- ", msg);\
memcpy(mac, (uint8*)AES_KDF((uint *)msg, sizeof(msg)/16), aes_datalen);\
dump(#msg " CMAC = ", (uint8*)mac, aes_datalen);
DUMP(msg1);
DUMP(msg2);
DUMP(msg3);
DUMP(msg4);
DUMP(msg1);
DUMP(msg4);
return 0;
}
// vi:expandtab:foldmethod=syntax sw=2 ts=2