Return the hash of the parsed verification key.
fn vk_hash(
env: soroban_sdk::Env,
) -> Result, soroban_sdk::Error>
Verify an UltraHonk proof using the stored VK.
fn verify_proof(
env: soroban_sdk::Env,
public_inputs: soroban_sdk::Bytes,
proof_bytes: soroban_sdk::Bytes,
) -> Result<(), soroban_sdk::Error>
Initialize the on-chain VK once at deploy time.
vk_hash is bb's own verification-key hash (it feeds the Fiat-Shamir
transcript's first challenge). It is NOT a keccak of vk_bytes — bb
derives it internally from the VK fields — so it cannot be recomputed
here. A mismatched pair fails closed (no proof verifies), but a
deployer-supplied consistent pair for a different circuit would
verify that other circuit: deployment tooling MUST validate the pair
by verifying a known-good fixture proof against the freshly deployed
instance before wiring it into the factory.
fn __constructor(
env: soroban_sdk::Env,
vk_bytes: soroban_sdk::Bytes,
vk_hash: soroban_sdk::BytesN<32>,
) -> Result<(), soroban_sdk::Error>