Definition: vec_curve.h:34
Functions for policy conversion needed for ABE schemes.
void cfe_gpsw_init(cfe_gpsw *gpsw, size_t l)
void cfe_gpsw_cipher_init(cfe_gpsw_cipher *cipher, size_t num_attrib)
void cfe_gpsw_generate_master_keys(cfe_gpsw_pub_key *pk, cfe_vec *sk, cfe_gpsw *gpsw)
void cfe_gpsw_free(cfe_gpsw *gpsw)
struct cfe_gpsw_key cfe_gpsw_key
cfe_error cfe_gpsw_decrypt(FP12_BN254 *res, cfe_gpsw_cipher *cipher, cfe_gpsw_key *key, cfe_gpsw *gpsw)
Vectors of elements of an elliptic curve struct and operations on it.
struct cfe_gpsw_pub_key cfe_gpsw_pub_key
void cfe_gpsw_key_init(cfe_gpsw_key *policy_key, cfe_msp *msp)
void cfe_gpsw_master_keys_init(cfe_gpsw_pub_key *pk, cfe_vec *sk, cfe_gpsw *gpsw)
void cfe_gpsw_cipher_free(cfe_gpsw_cipher *cipher)
void cfe_gpsw_generate_policy_key(cfe_gpsw_key *key, cfe_gpsw *gpsw, cfe_msp *msp, cfe_vec *sk)
void cfe_gpsw_key_free(cfe_gpsw_key *key)
Vector struct and operations.
Definition: vec_curve.h:42
struct cfe_gpsw_cipher cfe_gpsw_cipher
void cfe_gpsw_encrypt(cfe_gpsw_cipher *cipher, cfe_gpsw *gpsw, FP12_BN254 *msg, int *gamma, size_t num_attrib, cfe_gpsw_pub_key *pk)
void cfe_gpsw_rand_vec_const_sum(cfe_vec *v, mpz_t y, mpz_t p)
void cfe_gpsw_pub_key_free(cfe_gpsw_pub_key *pk)