Go to the documentation of this file.
17 #ifndef CIFER_DDH_MULTI_H
18 #define CIFER_DDH_MULTI_H
struct cfe_ddh_multi_sec_key cfe_ddh_multi_sec_key
void cfe_ddh_multi_fe_key_free(cfe_ddh_multi_fe_key *key)
struct cfe_ddh_multi_enc cfe_ddh_multi_enc
void cfe_ddh_multi_master_keys_init(cfe_mat *mpk, cfe_ddh_multi_sec_key *msk, cfe_ddh_multi *m)
cfe_error cfe_ddh_multi_encrypt(cfe_vec *ciphertext, cfe_ddh_multi_enc *e, cfe_vec *x, cfe_vec *pub_key, cfe_vec *otp)
void cfe_ddh_multi_fe_key_init(cfe_ddh_multi_fe_key *key, cfe_ddh_multi *m)
Matrix struct and operations.
void cfe_ddh_multi_generate_master_keys(cfe_mat *mpk, cfe_ddh_multi_sec_key *msk, cfe_ddh_multi *m)
void cfe_ddh_multi_ciphertext_init(cfe_vec *ciphertext, cfe_ddh_multi_enc *e)
void cfe_ddh_multi_enc_free(cfe_ddh_multi_enc *e)
void cfe_ddh_multi_free(cfe_ddh_multi *m)
cfe_error cfe_ddh_multi_derive_fe_key(cfe_ddh_multi_fe_key *res, cfe_ddh_multi *m, cfe_ddh_multi_sec_key *msk, cfe_mat *y)
void cfe_ddh_multi_enc_init(cfe_ddh_multi_enc *e, cfe_ddh_multi *m)
Definition: ddh_multi.h:32
Definition: ddh_multi.h:49
void cfe_ddh_multi_copy(cfe_ddh_multi *res, cfe_ddh_multi *m)
void cfe_ddh_multi_sec_key_free(cfe_ddh_multi_sec_key *key)
Definition: ddh_multi.h:40
struct cfe_ddh_multi cfe_ddh_multi
struct cfe_ddh_multi_fe_key cfe_ddh_multi_fe_key
cfe_error cfe_ddh_multi_precomp_init(cfe_ddh_multi *m, size_t slots, size_t l, size_t modulus_len, mpz_t bound)
cfe_error cfe_ddh_multi_decrypt(mpz_t res, cfe_ddh_multi *m, cfe_mat *ciphertext, cfe_ddh_multi_fe_key *key, cfe_mat *y)
cfe_error cfe_ddh_multi_init(cfe_ddh_multi *m, size_t slots, size_t l, size_t modulus_len, mpz_t bound)
Definition: ddh_multi.h:57