Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
bbapi_schnorr.cpp
Go to the documentation of this file.
1
6
7namespace bb::bbapi {
8
13
15{
16 grumpkin::g1::affine_element pub_key = grumpkin::g1::one * private_key;
17 crypto::schnorr_key_pair<grumpkin::fr, grumpkin::g1> key_pair = { private_key, pub_key };
18
19 auto sig = crypto::schnorr_construct_signature<grumpkin::fr, grumpkin::g1>(message_field, key_pair);
20 crypto::secure_erase_bytes(&key_pair.private_key, sizeof(key_pair.private_key));
21
22 return { sig.s, sig.e };
23}
24
26{
27 crypto::schnorr_signature sig = { s, e };
28
29 bool result = crypto::schnorr_verify_signature<grumpkin::fr, grumpkin::g1>(message_field, public_key, sig);
30
31 return { result };
32}
33
34} // namespace bb::bbapi
Schnorr signature command definitions for the Barretenberg RPC API.
static constexpr element one
Definition group.hpp:48
#define BB_UNUSED
void secure_erase_bytes(void *ptr, size_t size)
Definition hmac.hpp:18
Response execute(BBApiRequest &request) &&
Response execute(BBApiRequest &request) &&
Response execute(BBApiRequest &request) &&