kat
kat = kats[i];
hex2bin(seed, kat->seed, 32);
hex2bin(expected_pk_hash, kat->pk_hash, 32);
hex2bin(expected_sk_hash, kat->sk_hash, 32);
msglen = strlen(kat->msg) / 2;
hex2bin(msg, kat->msg, msglen);
hex2bin(rand, kat->rand, 32);
hex2bin(expected_sig_hash, kat->sig_hash, 32);
load_kats(const char *file, struct kat ***katsp, size_t *nkatsp)
struct kat *kat = NULL, **kats = NULL;
kat = xcalloc(1, sizeof(*kat));
kat->seed = get_json_string(json_buf, "key_generation_seed", 1);
kat->pk_hash = get_json_string(json_buf,
kat->sk_hash = get_json_string(json_buf,
kat->msg = get_json_string(json_buf, "message", 1);
kat->rand = get_json_string(json_buf, "signing_randomness", 1);
kat->sig_hash = get_json_string(json_buf,
kats[nkats++] = kat;
free_kats(struct kat **kats, size_t nkats)
struct kat *kat;
kat = kats[i];
free(kat->seed);
free(kat->pk_hash);
free(kat->sk_hash);
free(kat->msg);
free(kat->rand);
free(kat->sig_hash);
free(kat);
struct kat **kats, *kat;
parse_hex(const struct poly1305_kat *kat, const char *hexstr, void *voutput,
kat->vector_name);
kat->vector_name);
"got longer than expected value at %s", kat->vector_name);
kat->vector_name);
parse_vector(const struct poly1305_kat *kat,
parse_hex(kat, kat->test_key_hex, key, POLY1305_KEY_LEN);
parse_hex(kat, kat->test_msg_hex, msg, kat->test_msg_len);
parse_hex(kat, kat->expected_tag_hex, exptag, POLY1305_HASH_LEN);
const struct poly1305_kat *kat;
kat = &rfc7539_kats[i];
parse_vector(kat, key, msg, exptag);
do_cryptop(fd, ses, msg, kat->test_msg_len, comptag);
"KAT %s failed:", kat->vector_name);