18 #define HS_NTOR_KEY_EXPANSION_KDF_OUT_LEN \
19 (DIGEST256_LEN*2 + CIPHER256_KEY_LEN*2)
38 #define SUBCRED_LEN DIGEST256_LEN
44 uint8_t subcred[SUBCRED_LEN];
47 int hs_ntor_client_get_introduce1_keys(
54 int hs_ntor_client_get_rendezvous1_keys(
65 size_t n_subcredentials,
69 int hs_ntor_service_get_introduce1_keys(
76 int hs_ntor_service_get_rendezvous1_keys(
85 uint8_t *keys_out,
size_t keys_out_len);
89 const uint8_t *rcvd_mac);
#define CIPHER256_KEY_LEN
int hs_ntor_circuit_key_expansion(const uint8_t *ntor_key_seed, size_t seed_len, uint8_t *keys_out, size_t keys_out_len)
int hs_ntor_service_get_introduce1_keys_multi(const struct ed25519_public_key_t *intro_auth_pubkey, const struct curve25519_keypair_t *intro_enc_keypair, const struct curve25519_public_key_t *client_ephemeral_enc_pubkey, size_t n_subcredentials, const hs_subcredential_t *subcredentials, hs_ntor_intro_cell_keys_t *hs_ntor_intro_cell_keys_out)
int hs_ntor_client_rendezvous2_mac_is_good(const hs_ntor_rend_cell_keys_t *hs_ntor_rend_cell_keys, const uint8_t *rcvd_mac)
Master header file for Tor-specific functionality.