Zeth - Zerocash on Ethereum
0.8
Reference implementation of the Zeth protocol by Clearmatics
|
#include <note.hpp>
Public Member Functions | |
input_note_gadget (libsnark::protoboard< FieldT > &pb, const libsnark::pb_variable< FieldT > &ZERO, std::shared_ptr< libsnark::digest_variable< FieldT >> a_sk, std::shared_ptr< libsnark::digest_variable< FieldT >> nullifier, const libsnark::pb_variable< FieldT > &rt, const std::string &annotation_prefix="input_note_gadget") | |
void | generate_r1cs_constraints () |
void | generate_r1cs_witness (const std::vector< FieldT > &merkle_path, const bits_addr< TreeDepth > &address_bits, const zeth_note ¬e) |
![]() | |
note_gadget (libsnark::protoboard< FieldT > &pb, const std::string &annotation_prefix="note_gadget") | |
void | generate_r1cs_constraints () |
void | generate_r1cs_witness (const zeth_note ¬e) |
Additional Inherited Members | |
![]() | |
libsnark::pb_variable_array< FieldT > | value |
libsnark::pb_variable_array< FieldT > | r |
Gadget that makes sure that all conditions are met in order to spend a note:
libzeth::input_note_gadget< FieldT, HashT, HashTreeT, TreeDepth >::input_note_gadget | ( | libsnark::protoboard< FieldT > & | pb, |
const libsnark::pb_variable< FieldT > & | ZERO, | ||
std::shared_ptr< libsnark::digest_variable< FieldT >> | a_sk, | ||
std::shared_ptr< libsnark::digest_variable< FieldT >> | nullifier, | ||
const libsnark::pb_variable< FieldT > & | rt, | ||
const std::string & | annotation_prefix = "input_note_gadget< FieldT, HashT, HashTreeT, TreeDepth >" |
||
) |
void libzeth::input_note_gadget< FieldT, HashT, HashTreeT, TreeDepth >::generate_r1cs_constraints | ( | ) |
void libzeth::input_note_gadget< FieldT, HashT, HashTreeT, TreeDepth >::generate_r1cs_witness | ( | const std::vector< FieldT > & | merkle_path, |
const bits_addr< TreeDepth > & | address_bits, | ||
const zeth_note & | note | ||
) |