diff options
Diffstat (limited to 'libcmix-crypto/elgamal/elgamal.h')
| -rw-r--r-- | libcmix-crypto/elgamal/elgamal.h | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/libcmix-crypto/elgamal/elgamal.h b/libcmix-crypto/elgamal/elgamal.h index 0662827..dc2dd6f 100644 --- a/libcmix-crypto/elgamal/elgamal.h +++ b/libcmix-crypto/elgamal/elgamal.h @@ -36,6 +36,25 @@ extern void elgamal_keypair_deleter(struct KeyPair* p); extern void elgamal_get_key_array(char** buffer, size_t* len, void* pubkey); /*! + * \brief get_group_element + * \param secure + * \return + */ +extern void* elgamal_get_group_element(bool secure); + +/*! + * \brief get_key_exchange_value + * \param group_el + * \return + */ +extern void* elgamal_get_key_exchange_value(void* group_el); + +/*! + * \brief elgamal_free_group_element + */ +extern void elgamal_free_group_element(void*); + +/*! * \brief elgamal_add_public_share * \param buffer * \param in_len @@ -52,7 +71,7 @@ void elgamal_add_public_share(char** buffer, size_t* out_len, char const* share, * \param swap_pub_order Should we swap the order in which we feed the public keys to the hash function. * \return A Shared key */ -extern struct SharedKey elgamal_derive_shared_key(struct KeyPair pair, void const* pub_key, bool swap_pub_order); +extern struct SharedKey elgamal_derive_shared_key(struct KeyPair keypair, unsigned char const* other_pub, size_t pub_len, unsigned char const* value, size_t value_len, void* priv_value, bool swap); /*! * \brief elgamal_shared_key_deleter |
