Newer
Older
AESLearning / AESKDFtest.c
@Takayuki Kurosawa Takayuki Kurosawa on 17 Mar 2015 1 KB maintainance release
#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