30 std::array<uint8_t, 32>
s;
33 std::array<uint8_t, 32>
e;
37template <
typename Hash,
typename Fq,
typename Fr,
typename G1>
39 const typename G1::affine_element& public_key,
42template <
typename Hash,
typename Fq,
typename Fr,
typename G1>
47 return lhs.
s == rhs.
s && lhs.
e == rhs.
e;
52 os <<
"{ " << sig.
s <<
", " << sig.
e <<
" }";
68#include "./schnorr.tcc"
schnorr_signature schnorr_construct_signature(const std::string &message, const schnorr_key_pair< Fr, G1 > &account)
void read(B &it, SchnorrProofOfPossession< G1, Hash > &proof_of_possession)
void write(B &buf, SchnorrProofOfPossession< G1, Hash > const &proof_of_possession)
bool schnorr_verify_signature(const std::string &message, const typename G1::affine_element &public_key, const schnorr_signature &sig)
bool operator==(ecdsa_signature const &lhs, ecdsa_signature const &rhs)
std::ostream & operator<<(std::ostream &os, ecdsa_signature const &sig)
G1::affine_element public_key
std::array< uint8_t, 32 > s
std::array< uint8_t, 32 > e