int test_ac_gcm(void) { if (test_gcm() != AUTHENC_OK) { return 1; } if (test_ac() != AUTHENC_OK) { return 1; } if (test_supercop() != AUTHENC_OK) { return 1; } puts("OK!"); return 0; }
int main(int argc, char *argv[]) { int ret = 0; if (argc >= 3 && os_strcmp(argv[1], "NIST-KW-AE") == 0) ret += test_nist_key_wrap_ae(argv[2]); else if (argc >= 3 && os_strcmp(argv[1], "NIST-KW-AD") == 0) ret += test_nist_key_wrap_ad(argv[2]); test_aes_perf(); ret += test_gcm(); if (ret) printf("FAILED!\n"); return ret; }
int main(int argc, char *argv[]) { u8 kek[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f }; u8 plain[] = { 0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, 0x88, 0x99, 0xaa, 0xbb, 0xcc, 0xdd, 0xee, 0xff }; u8 crypt[] = { 0x1F, 0xA6, 0x8B, 0x0A, 0x81, 0x12, 0xB4, 0x47, 0xAE, 0xF3, 0x4B, 0xD8, 0xFB, 0x5A, 0x7B, 0x82, 0x9D, 0x3E, 0x86, 0x23, 0x71, 0xD2, 0xCF, 0xE5 }; u8 result[24]; int ret = 0; unsigned int i; struct omac1_test_vector *tv; if (aes_wrap(kek, 2, plain, result)) { printf("AES-WRAP-128-128 reported failure\n"); ret++; } if (memcmp(result, crypt, 24) != 0) { printf("AES-WRAP-128-128 failed\n"); ret++; } if (aes_unwrap(kek, 2, crypt, result)) { printf("AES-UNWRAP-128-128 reported failure\n"); ret++; } if (memcmp(result, plain, 16) != 0) { printf("AES-UNWRAP-128-128 failed\n"); ret++; for (i = 0; i < 16; i++) printf(" %02x", result[i]); printf("\n"); } test_aes_perf(); for (i = 0; i < ARRAY_SIZE(test_vectors); i++) { tv = &test_vectors[i]; if (omac1_aes_128(tv->k, tv->msg, tv->msg_len, result) || memcmp(result, tv->tag, 16) != 0) { printf("OMAC1-AES-128 test vector %d failed\n", i); ret++; } if (tv->msg_len > 1) { const u8 *addr[2]; size_t len[2]; addr[0] = tv->msg; len[0] = 1; addr[1] = tv->msg + 1; len[1] = tv->msg_len - 1; if (omac1_aes_128_vector(tv->k, 2, addr, len, result) || memcmp(result, tv->tag, 16) != 0) { printf("OMAC1-AES-128(vector) test vector %d " "failed\n", i); ret++; } } } ret += test_eax(); ret += test_cbc(); ret += test_gcm(); if (ret) printf("FAILED!\n"); return ret; }