1#include "barretenberg/common/wasm_export.hpp"
2#include "barretenberg/ecc/curves/bn254/fr.hpp"
3#include "barretenberg/ecc/curves/grumpkin/grumpkin.hpp"
12WASM_EXPORT
void schnorr_compute_public_key(fr::in_buf private_key, affine_element::out_buf public_key_buf);
13WASM_EXPORT
void schnorr_negate_public_key(affine_element::in_buf public_key_buffer, affine_element::out_buf output);
15WASM_EXPORT
void schnorr_construct_signature(uint8_t
const* message, fr::in_buf private_key, out_buf32 s, out_buf32 e);
17WASM_EXPORT
void schnorr_verify_signature(
18 uint8_t
const* message, affine_element::in_buf pub_key, in_buf32 sig_s, in_buf32 sig_e,
bool* result);
20WASM_EXPORT
void schnorr_multisig_create_multisig_public_key(fq::in_buf private_key,
21 multisig::MultiSigPublicKey::out_buf multisig_pubkey_buf);
23WASM_EXPORT
void schnorr_multisig_validate_and_combine_signer_pubkeys(
24 multisig::MultiSigPublicKey::vec_in_buf signer_pubkey_buf, affine_element::out_buf combined_key_buf,
bool* success);
26WASM_EXPORT
void schnorr_multisig_construct_signature_round_1(
27 multisig::RoundOnePublicOutput::out_buf round_one_public_output_buf,
28 multisig::RoundOnePrivateOutput::out_buf round_one_private_output_buf);
30WASM_EXPORT
void schnorr_multisig_construct_signature_round_2(
31 uint8_t
const* message,
32 fq::in_buf private_key,
33 multisig::RoundOnePrivateOutput::in_buf signer_round_one_private_buf,
34 multisig::MultiSigPublicKey::vec_in_buf signer_pubkeys_buf,
35 multisig::RoundOnePublicOutput::vec_in_buf round_one_public_buf,
36 fq::out_buf round_two_buf,
39WASM_EXPORT
void schnorr_multisig_combine_signatures(uint8_t
const* message,
40 multisig::MultiSigPublicKey::vec_in_buf signer_pubkeys_buf,
41 multisig::RoundOnePublicOutput::vec_in_buf round_one_buf,
42 fq::vec_in_buf round_two_buf,
Definition: affine_element.hpp:11
Implements the SpeedyMuSig protocol; a secure 2-round interactive multisignature scheme whose signatu...
Definition: multisig.hpp:28
constexpr_utils defines some helper methods that perform some stl-equivalent operations but in a cons...
Definition: constexpr_utils.hpp:16