#pragma once #ifdef __cplusplus extern "C" { #endif #include "api.h" extern struct KeyPair elgamal_create_keypair(); extern void elgamal_keypair_deleter(struct KeyPair p); extern struct SharedKey elgamal_derive_shared_key(struct KeyPair pair, unsigned char const* pub_key, bool swap_pub_order); extern void elgamal_shared_key_deleter(struct SharedKey s); struct Api get_elgamal_implementation(); #ifdef __cplusplus } #endif