Contract b4de6c7c15af334b8b0c1610e1687e8edb572d7454db87fb0d5f7013ff457d1f

← Back to Index 📥 Download WASM

Meta

cliver 25.2.0#28484880988199233a7e8e87c97cb12dac323cb3
rssdkver 26.1.0#175aa41306f383057a8cdfc84b68d931664fc34e
rsver 1.94.1

Instances

  • CDGRALTQPLSRM656AUG7Y6YSR3BVVKY5BUWL4VXE5NMRMP4VJ56PEJM7

Interface

fn is_sealed(env: soroban_sdk::Env, nullifier: soroban_sdk::BytesN<32>) -> bool

Verify a body proof AND seal it as a public attestation.

Check order is cheap-to-expensive (canonical form → replay → SHA over the suffix → pairing) so invalid submissions cost the sponsor as little as possible; nothing is persisted until every check has passed.

NOTE: suffix rides in the transaction, so it is public forever in the ledger history. The client audits it for personal data and shows the user exactly what will be published before submitting.

fn seal_body(
    env: soroban_sdk::Env,
    proof: Proof,
    pub_signals: soroban_sdk::Vec>,
    suffix: soroban_sdk::Bytes,
) -> Result, soroban_sdk::Error>

Pure verification of proof + suffix, no state change. Returns true only if BOTH the pairing check and the SHA completion against bh= pass.

fn verify_proof(
    env: soroban_sdk::Env,
    proof: Proof,
    pub_signals: soroban_sdk::Vec>,
    suffix: soroban_sdk::Bytes,
) -> Result

Read a sealed attestation by id (== nullifier) — same ABI as the header verifier so the /p page readers work against either contract.

fn get_attestation(
    env: soroban_sdk::Env,
    id: soroban_sdk::BytesN<32>,
) -> Option

Imports

WebAssembly Text (WAT) ▶