Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
c_bind.hpp File Reference
#include <barretenberg/common/serialize.hpp>
#include <barretenberg/common/wasm_export.hpp>
#include <barretenberg/ecc/curves/bn254/fr.hpp>
#include <cstddef>
#include <cstdint>

Go to the source code of this file.

Functions

WASM_EXPORT void acir_get_circuit_sizes (uint8_t const *constraint_system_buf, bool const *has_ipa_claim, uint32_t *total, uint32_t *subgroup)
 
WASM_EXPORT void acir_prove_and_verify_ultra_honk (uint8_t const *constraint_system_buf, uint8_t const *witness_buf, bool *result)
 Construct and verify an UltraHonk proof.
 
WASM_EXPORT void acir_prove_and_verify_mega_honk (uint8_t const *constraint_system_buf, uint8_t const *witness_buf, bool *result)
 Construct and verify a Chonk proof.
 
WASM_EXPORT void acir_prove_aztec_client (uint8_t const *ivc_inputs_buf, uint8_t **out_proof, uint8_t **out_vk)
 
WASM_EXPORT void acir_verify_aztec_client (uint8_t const *proof_buf, uint8_t const *vk_buf, bool *result)
 
WASM_EXPORT void acir_load_verification_key (in_ptr acir_composer_ptr, uint8_t const *vk_buf)
 
WASM_EXPORT void acir_init_verification_key (in_ptr acir_composer_ptr)
 
WASM_EXPORT void acir_get_verification_key (in_ptr acir_composer_ptr, uint8_t **out)
 
WASM_EXPORT void acir_get_prover_instance (in_ptr acir_composer_ptr, uint8_t const *acir_vec, bool const *recursive, uint8_t **out)
 
WASM_EXPORT void acir_verify_proof (in_ptr acir_composer_ptr, uint8_t const *proof_buf, bool *result)
 
WASM_EXPORT void acir_get_solidity_verifier (in_ptr acir_composer_ptr, out_str_buf out)
 
WASM_EXPORT void acir_honk_solidity_verifier (uint8_t const *proof_buf, uint8_t const *vk_buf, out_str_buf out)
 
WASM_EXPORT void acir_serialize_proof_into_fields (in_ptr acir_composer_ptr, uint8_t const *proof_buf, uint32_t const *num_inner_public_inputs, fr::vec_out_buf out)
 
WASM_EXPORT void acir_serialize_verification_key_into_fields (in_ptr acir_composer_ptr, fr::vec_out_buf out_vkey, fr::out_buf out_key_hash)
 
WASM_EXPORT void acir_prove_ultra_honk (uint8_t const *acir_vec, uint8_t const *witness_vec, uint8_t const *vk_buf, uint8_t **out)
 
WASM_EXPORT void acir_prove_ultra_keccak_honk (uint8_t const *acir_vec, uint8_t const *witness_vec, uint8_t const *vk_buf, uint8_t **out)
 
WASM_EXPORT void acir_prove_ultra_keccak_zk_honk (uint8_t const *acir_vec, uint8_t const *witness_vec, uint8_t const *vk_buf, uint8_t **out)
 
WASM_EXPORT void acir_prove_ultra_starknet_honk (uint8_t const *acir_vec, uint8_t const *witness_vec, uint8_t const *vk_buf, uint8_t **out)
 
WASM_EXPORT void acir_prove_ultra_starknet_zk_honk (uint8_t const *acir_vec, uint8_t const *witness_vec, uint8_t const *vk_buf, uint8_t **out)
 
WASM_EXPORT void acir_verify_ultra_honk (uint8_t const *proof_buf, uint8_t const *vk_buf, bool *result)
 
WASM_EXPORT void acir_verify_ultra_keccak_honk (uint8_t const *proof_buf, uint8_t const *vk_buf, bool *result)
 
WASM_EXPORT void acir_verify_ultra_keccak_zk_honk (uint8_t const *proof_buf, uint8_t const *vk_buf, bool *result)
 
WASM_EXPORT void acir_verify_ultra_starknet_honk (uint8_t const *proof_buf, uint8_t const *vk_buf, bool *result)
 
WASM_EXPORT void acir_verify_ultra_starknet_zk_honk (uint8_t const *proof_buf, uint8_t const *vk_buf, bool *result)
 
WASM_EXPORT void acir_write_vk_ultra_honk (uint8_t const *acir_vec, uint8_t **out)
 
WASM_EXPORT void acir_write_vk_ultra_keccak_honk (uint8_t const *acir_vec, uint8_t **out)
 
WASM_EXPORT void acir_write_vk_ultra_keccak_zk_honk (uint8_t const *acir_vec, uint8_t **out)
 
WASM_EXPORT void acir_write_vk_ultra_starknet_honk (uint8_t const *acir_vec, uint8_t **out)
 
WASM_EXPORT void acir_write_vk_ultra_starknet_zk_honk (uint8_t const *acir_vec, uint8_t **out)
 
WASM_EXPORT void acir_proof_as_fields_ultra_honk (uint8_t const *proof_buf, fr::vec_out_buf out)
 
WASM_EXPORT void acir_vk_as_fields_ultra_honk (uint8_t const *vk_buf, fr::vec_out_buf out_vkey)
 
WASM_EXPORT void acir_vk_as_fields_mega_honk (uint8_t const *vk_buf, fr::vec_out_buf out_vkey)
 
WASM_EXPORT void acir_gates_aztec_client (uint8_t const *ivc_inputs_buf, uint8_t **out)
 

Function Documentation

◆ acir_gates_aztec_client()

WASM_EXPORT void acir_gates_aztec_client ( uint8_t const *  ivc_inputs_buf,
uint8_t **  out 
)

Definition at line 437 of file c_bind.cpp.

◆ acir_get_circuit_sizes()

WASM_EXPORT void acir_get_circuit_sizes ( uint8_t const *  constraint_system_buf,
bool const *  has_ipa_claim,
uint32_t *  total,
uint32_t *  subgroup 
)

Definition at line 24 of file c_bind.cpp.

◆ acir_get_prover_instance()

WASM_EXPORT void acir_get_prover_instance ( in_ptr  acir_composer_ptr,
uint8_t const *  acir_vec,
bool const *  recursive,
uint8_t **  out 
)

◆ acir_get_solidity_verifier()

WASM_EXPORT void acir_get_solidity_verifier ( in_ptr  acir_composer_ptr,
out_str_buf  out 
)

◆ acir_get_verification_key()

WASM_EXPORT void acir_get_verification_key ( in_ptr  acir_composer_ptr,
uint8_t **  out 
)

◆ acir_honk_solidity_verifier()

WASM_EXPORT void acir_honk_solidity_verifier ( uint8_t const *  proof_buf,
uint8_t const *  vk_buf,
out_str_buf  out 
)

Definition at line 402 of file c_bind.cpp.

◆ acir_init_verification_key()

WASM_EXPORT void acir_init_verification_key ( in_ptr  acir_composer_ptr)

◆ acir_load_verification_key()

WASM_EXPORT void acir_load_verification_key ( in_ptr  acir_composer_ptr,
uint8_t const *  vk_buf 
)

◆ acir_proof_as_fields_ultra_honk()

WASM_EXPORT void acir_proof_as_fields_ultra_honk ( uint8_t const *  proof_buf,
fr::vec_out_buf  out 
)

Definition at line 413 of file c_bind.cpp.

◆ acir_prove_and_verify_mega_honk()

WASM_EXPORT void acir_prove_and_verify_mega_honk ( uint8_t const *  constraint_system_buf,
uint8_t const *  witness_buf,
bool *  result 
)

Construct and verify a Chonk proof.

Deprecated:

Definition at line 58 of file c_bind.cpp.

◆ acir_prove_and_verify_ultra_honk()

WASM_EXPORT void acir_prove_and_verify_ultra_honk ( uint8_t const *  constraint_system_buf,
uint8_t const *  witness_buf,
bool *  result 
)

Construct and verify an UltraHonk proof.

Definition at line 38 of file c_bind.cpp.

◆ acir_prove_aztec_client()

WASM_EXPORT void acir_prove_aztec_client ( uint8_t const *  ivc_inputs_buf,
uint8_t **  out_proof,
uint8_t **  out_vk 
)

Definition at line 77 of file c_bind.cpp.

◆ acir_prove_ultra_honk()

WASM_EXPORT void acir_prove_ultra_honk ( uint8_t const *  acir_vec,
uint8_t const *  witness_vec,
uint8_t const *  vk_buf,
uint8_t **  out 
)

◆ acir_prove_ultra_keccak_honk()

WASM_EXPORT void acir_prove_ultra_keccak_honk ( uint8_t const *  acir_vec,
uint8_t const *  witness_vec,
uint8_t const *  vk_buf,
uint8_t **  out 
)

Definition at line 140 of file c_bind.cpp.

◆ acir_prove_ultra_keccak_zk_honk()

WASM_EXPORT void acir_prove_ultra_keccak_zk_honk ( uint8_t const *  acir_vec,
uint8_t const *  witness_vec,
uint8_t const *  vk_buf,
uint8_t **  out 
)

Definition at line 162 of file c_bind.cpp.

◆ acir_prove_ultra_starknet_honk()

WASM_EXPORT void acir_prove_ultra_starknet_honk ( uint8_t const *  acir_vec,
uint8_t const *  witness_vec,
uint8_t const *  vk_buf,
uint8_t **  out 
)

Definition at line 184 of file c_bind.cpp.

◆ acir_prove_ultra_starknet_zk_honk()

WASM_EXPORT void acir_prove_ultra_starknet_zk_honk ( uint8_t const *  acir_vec,
uint8_t const *  witness_vec,
uint8_t const *  vk_buf,
uint8_t **  out 
)

Definition at line 207 of file c_bind.cpp.

◆ acir_serialize_proof_into_fields()

WASM_EXPORT void acir_serialize_proof_into_fields ( in_ptr  acir_composer_ptr,
uint8_t const *  proof_buf,
uint32_t const *  num_inner_public_inputs,
fr::vec_out_buf  out 
)

◆ acir_serialize_verification_key_into_fields()

WASM_EXPORT void acir_serialize_verification_key_into_fields ( in_ptr  acir_composer_ptr,
fr::vec_out_buf  out_vkey,
fr::out_buf  out_key_hash 
)

◆ acir_verify_aztec_client()

WASM_EXPORT void acir_verify_aztec_client ( uint8_t const *  proof_buf,
uint8_t const *  vk_buf,
bool *  result 
)

Definition at line 109 of file c_bind.cpp.

◆ acir_verify_proof()

WASM_EXPORT void acir_verify_proof ( in_ptr  acir_composer_ptr,
uint8_t const *  proof_buf,
bool *  result 
)

◆ acir_verify_ultra_honk()

WASM_EXPORT void acir_verify_ultra_honk ( uint8_t const *  proof_buf,
uint8_t const *  vk_buf,
bool *  result 
)

◆ acir_verify_ultra_keccak_honk()

WASM_EXPORT void acir_verify_ultra_keccak_honk ( uint8_t const *  proof_buf,
uint8_t const *  vk_buf,
bool *  result 
)

Definition at line 243 of file c_bind.cpp.

◆ acir_verify_ultra_keccak_zk_honk()

WASM_EXPORT void acir_verify_ultra_keccak_zk_honk ( uint8_t const *  proof_buf,
uint8_t const *  vk_buf,
bool *  result 
)

Definition at line 256 of file c_bind.cpp.

◆ acir_verify_ultra_starknet_honk()

WASM_EXPORT void acir_verify_ultra_starknet_honk ( uint8_t const *  proof_buf,
uint8_t const *  vk_buf,
bool *  result 
)

Definition at line 269 of file c_bind.cpp.

◆ acir_verify_ultra_starknet_zk_honk()

WASM_EXPORT void acir_verify_ultra_starknet_zk_honk ( uint8_t const *  proof_buf,
uint8_t const *  vk_buf,
bool *  result 
)

Definition at line 289 of file c_bind.cpp.

◆ acir_vk_as_fields_mega_honk()

WASM_EXPORT void acir_vk_as_fields_mega_honk ( uint8_t const *  vk_buf,
fr::vec_out_buf  out_vkey 
)

Definition at line 428 of file c_bind.cpp.

◆ acir_vk_as_fields_ultra_honk()

WASM_EXPORT void acir_vk_as_fields_ultra_honk ( uint8_t const *  vk_buf,
fr::vec_out_buf  out_vkey 
)

Definition at line 419 of file c_bind.cpp.

◆ acir_write_vk_ultra_honk()

WASM_EXPORT void acir_write_vk_ultra_honk ( uint8_t const *  acir_vec,
uint8_t **  out 
)

Definition at line 308 of file c_bind.cpp.

◆ acir_write_vk_ultra_keccak_honk()

WASM_EXPORT void acir_write_vk_ultra_keccak_honk ( uint8_t const *  acir_vec,
uint8_t **  out 
)

Definition at line 324 of file c_bind.cpp.

◆ acir_write_vk_ultra_keccak_zk_honk()

WASM_EXPORT void acir_write_vk_ultra_keccak_zk_honk ( uint8_t const *  acir_vec,
uint8_t **  out 
)

Definition at line 341 of file c_bind.cpp.

◆ acir_write_vk_ultra_starknet_honk()

WASM_EXPORT void acir_write_vk_ultra_starknet_honk ( uint8_t const *  acir_vec,
uint8_t **  out 
)

Definition at line 358 of file c_bind.cpp.

◆ acir_write_vk_ultra_starknet_zk_honk()

WASM_EXPORT void acir_write_vk_ultra_starknet_zk_honk ( uint8_t const *  acir_vec,
uint8_t **  out 
)

Definition at line 380 of file c_bind.cpp.