|
Barretenberg
The ZK-SNARK library at the core of Aztec
|
Wrapper holding a verification key and its precomputed hash. More...
#include <flavor.hpp>
Public Types | |
| template<typename T = VerificationKey> | |
| using | Builder = typename std::enable_if_t< requires { typename T::Builder |
| template<typename T = VerificationKey> | |
| using | NativeVerificationKey = typename std::enable_if_t< requires { typename T::NativeVerificationKey |
Public Member Functions | |
| VKAndHash_ ()=default | |
| VKAndHash_ (const std::shared_ptr< VerificationKey > &vk) | |
| Construct from VK, auto-computing the hash. | |
| VKAndHash_ (const std::shared_ptr< VerificationKey > &vk, const FF &hash) | |
| Construct from VK and pre-provided hash. | |
| template<typename VK = VerificationKey, typename B = typename VK::Builder, typename NVK = typename VK::NativeVerificationKey> | |
| VKAndHash_ (B &builder, const std::shared_ptr< NVK > &native_vk) | |
| Construct stdlib VKAndHash from a native VK (recursive verification keys only). | |
Public Attributes | |
| std::shared_ptr< VerificationKey > | vk |
| FF | hash |
Wrapper holding a verification key and its precomputed hash.
The hash is used to bind the verification key to the proof during verification, ensuring that the correct VK is used.
This class provides three constructors for different use cases:
bb verify, ACIR proof verification)| FF | The field type (native fr or stdlib field_t) |
| VerificationKey | The verification key type (native or stdlib) |
Definition at line 521 of file flavor.hpp.
| using bb::VKAndHash_< FF, VerificationKey >::Builder = typename std::enable_if_t<requires { typename T::Builder |
Definition at line 524 of file flavor.hpp.
| using bb::VKAndHash_< FF, VerificationKey >::NativeVerificationKey = typename std::enable_if_t<requires { typename T::NativeVerificationKey |
Definition at line 527 of file flavor.hpp.
|
default |
|
inline |
Construct from VK, auto-computing the hash.
Definition at line 535 of file flavor.hpp.
|
inline |
Construct from VK and pre-provided hash.
Definition at line 543 of file flavor.hpp.
|
inline |
Construct stdlib VKAndHash from a native VK (recursive verification keys only).
Definition at line 554 of file flavor.hpp.
| FF bb::VKAndHash_< FF, VerificationKey >::hash |
Definition at line 559 of file flavor.hpp.
| std::shared_ptr<VerificationKey> bb::VKAndHash_< FF, VerificationKey >::vk |
Definition at line 558 of file flavor.hpp.