Zeth - Zerocash on Ethereum  0.8
Reference implementation of the Zeth protocol by Clearmatics
pghr13_api_handler.hpp
Go to the documentation of this file.
1 // Copyright (c) 2015-2022 Clearmatics Technologies Ltd
2 //
3 // SPDX-License-Identifier: LGPL-3.0+
4 
5 #ifndef __ZETH_SNARKS_PGHR13_PGHR13_API_HANDLER_HPP__
6 #define __ZETH_SNARKS_PGHR13_PGHR13_API_HANDLER_HPP__
7 
10 
11 #include <zeth/api/snark_messages.pb.h>
12 
13 namespace libzeth
14 {
15 
17 template<typename ppT> class pghr13_api_handler
18 {
19 public:
21 
22  static void verification_key_to_proto(
23  const typename snark::verification_key &vk,
25 
27  const zeth_proto::VerificationKey &verification_key);
28 
29  static void extended_proof_to_proto(
30  const extended_proof<ppT, snark> &ext_proof,
31  zeth_proto::ExtendedProof *message);
32 
34  const zeth_proto::ExtendedProof &ext_proof);
35 };
36 
37 } // namespace libzeth
38 
40 
41 #endif // __ZETH_SNARKS_PGHR13_PGHR13_API_HANDLER_HPP__
libzeth::extended_proof
Definition: extended_proof.hpp:17
libzeth
Definition: binary_operation.hpp:15
pghr13_api_handler.tcc
extended_proof.hpp
libzeth::pghr13_api_handler::extended_proof_to_proto
static void extended_proof_to_proto(const extended_proof< ppT, snark > &ext_proof, zeth_proto::ExtendedProof *message)
libzeth::pghr13_api_handler::verification_key_from_proto
static snark::verification_key verification_key_from_proto(const zeth_proto::VerificationKey &verification_key)
libzeth::pghr13_snark
Definition: pghr13_snark.hpp:15
libzeth::pghr13_api_handler
Implementation of API-related functions for the PGHR13 snark.
Definition: pghr13_api_handler.hpp:17
libzeth::pghr13_api_handler::verification_key_to_proto
static void verification_key_to_proto(const typename snark::verification_key &vk, zeth_proto::VerificationKey *message)
pghr13_snark.hpp
libzeth::pghr13_api_handler::extended_proof_from_proto
static libzeth::extended_proof< ppT, snark > extended_proof_from_proto(const zeth_proto::ExtendedProof &ext_proof)
coordinator.crypto.VerificationKey
VerificationKey
Definition: crypto.py:15
libzeth::pghr13_snark::verification_key
libsnark::r1cs_ppzksnark_verification_key< ppT > verification_key
Definition: pghr13_snark.hpp:19