Contract 0179203425527fdcf12d4ecc1e4ab2c2c6de54d860cd0aab114509eda0be6a92

← Back to Index 📥 Download WASM

Meta

cliver 27.0.0#5a7c5fe76530bf4248477ac812fc757146b98cc4
rssdkver 27.0.1#19a2d480fffa003e739db7cbee0249111dbfd05c
rsver 1.93.1

Instances

  • CBDLXMZRYYFPROBFGLXN3GNE6A3MQ7JILNMXN4E5NGLLODGYGSAGN56C

Interface

Admin-only function to update the contract WASM.

fn upgrade(env: soroban_sdk::Env, new_wasm_hash: soroban_sdk::BytesN<32>)
fn get_admin(env: soroban_sdk::Env) -> soroban_sdk::Address

Admin-only function to update the VK if the circuit changes.

fn update_vk(env: soroban_sdk::Env, new_vk: soroban_sdk::Bytes)

Atomically initializes the contract with required dependencies.

fn __constructor(
    env: soroban_sdk::Env,
    admin: soroban_sdk::Address,
    lbx_token: soroban_sdk::Address,
    distributor: soroban_sdk::Address,
    fee_amount: i128,
    vk: soroban_sdk::Bytes,
)
fn get_lbx_token(env: soroban_sdk::Env) -> soroban_sdk::Address
fn get_stealth_vk(env: soroban_sdk::Env) -> soroban_sdk::Bytes

Admin-only function to set the stealth_signal verification key.

fn set_stealth_vk(env: soroban_sdk::Env, stealth_vk: soroban_sdk::Bytes)
fn get_identity_config(env: soroban_sdk::Env) -> (soroban_sdk::Bytes, i128)
fn get_tracking_config(env: soroban_sdk::Env) -> (soroban_sdk::Bytes, i128)

Read-only accessor for ecosystem attestation metadata.

fn get_ecosystem_binding(
    env: soroban_sdk::Env,
) -> (
    soroban_sdk::Bytes,
    soroban_sdk::Address,
    soroban_sdk::Address,
    soroban_sdk::Address,
    u32,
)

Admin-only ecosystem binding metadata update.

The ecosystem binding authenticates the deployment identity and LBX token provenance. ZK proof binding covers sha256(epk) and request_type only. Ciphertext semantic validity and hostname-to-proof binding are enforced at the application layer.

fn set_ecosystem_binding(
    env: soroban_sdk::Env,
    hostname: soroban_sdk::Bytes,
    lbx_issuer: soroban_sdk::Address,
    lbx_distributor: soroban_sdk::Address,
    lbx_sac: soroban_sdk::Address,
    expires_at_ledger: u32,
)
fn get_release_descriptor(
    env: soroban_sdk::Env,
) -> (soroban_sdk::String, u32, u32, u32, u32, u32)

Read-only accessor for the distributor storage value.

fn get_distributor_address(env: soroban_sdk::Env) -> soroban_sdk::Address
fn set_verify_diag_enabled(env: soroban_sdk::Env, enabled: bool)

Admin-only identity signaling configuration.

fn set_identity_config(
    env: soroban_sdk::Env,
    identity_vk: soroban_sdk::Bytes,
    identity_fee_amount: i128,
)

Submit an opaque identity signal with replay protection.

ABI arguments: (relayer, identity_proof, encrypted_payload, action_type, nullifier, expires_at_ledger, identity_commitment, satellite, hostname).

primary is not a caller-provided argument. It is derived from stored Distributor during fee routing and then emitted in event payloads.

fn request_identity_signal(
    env: soroban_sdk::Env,
    relayer: soroban_sdk::Address,
    identity_proof: soroban_sdk::Bytes,
    encrypted_payload: soroban_sdk::Bytes,
    action_type: u32,
    nullifier: soroban_sdk::BytesN<32>,
    expires_at_ledger: u32,
    identity_commitment: soroban_sdk::BytesN<32>,
    satellite: soroban_sdk::Address,
    hostname: soroban_sdk::Bytes,
)

Submits a tracking request.

ABI arguments: (caller, zk_proof, ephemeral_pubkey, ciphertext, satellite, request_type, hostname, spend_pub_commitment).

primary is not a caller-provided argument. It is derived from stored Distributor during fee routing and then emitted in event payloads.

Fee collection occurs before verification. Invalid proofs do not revert after payment; a failure event is emitted and the call returns.

fn request_tracking(
    env: soroban_sdk::Env,
    caller: soroban_sdk::Address,
    zk_proof: soroban_sdk::Bytes,
    epk: soroban_sdk::BytesN<64>,
    ciphertext: soroban_sdk::BytesN<64>,
    satellite: soroban_sdk::Address,
    request_type: u32,
    hostname: soroban_sdk::Bytes,
    spend_pub_commitment: soroban_sdk::BytesN<32>,
)

Submits a stealth tracking request where the satellite is the caller.

In this mode the satellite is the authenticated party, fee payer, and on-chain caller. The user's G-address never appears on-chain. Verification always uses the stealth VK. The on-chain request_type is the generic stealth type (7); the actual operation type is encrypted inside the ciphertext field.

ABI arguments: (satellite, zk_proof, ephemeral_pubkey, ciphertext, request_type, hostname, spend_pub_commitment).

fn request_stealth_tracking(
    env: soroban_sdk::Env,
    satellite: soroban_sdk::Address,
    zk_proof: soroban_sdk::Bytes,
    epk: soroban_sdk::BytesN<64>,
    ciphertext: soroban_sdk::BytesN<64>,
    request_type: u32,
    hostname: soroban_sdk::Bytes,
    spend_pub_commitment: soroban_sdk::BytesN<32>,
)

Imports

WebAssembly Text (WAT) ▶