Documentation

Complete guide to zkBank system

Smart Contract

Complete documentation for the zkBank Move smart contract module, including data structures, functions, events, and error codes.

Move Language
Sui Blockchain
Module: SuiBankZK::finality
Testnet Deployed
Contract Information

Deployment Details

  • Module: SuiBankZK::finality
  • Package ID: 0xafdaf72f4f60208486b9a634ae67b9d479be8ea3da4b0f4912eac8b9f4c59047
  • Network: Sui Testnet
  • Language: Move

System Limits

  • Max Counterparties: 10
  • Max Metadata: 1024 bytes
  • Merkle Root: 32 bytes
  • Gas Budget: 10M
PublicTx
Public transaction data visible to all participants
FieldTypeDescription
initiatoraddressTransaction initiator address
counterpartiesvector<address>List of counterparty addresses
merkle_rootvector<u8>32-byte Merkle root hash
metadatavector<u8>Transaction metadata (max 1024 bytes)
timestampu64Transaction creation timestamp
nonceu64Unique transaction nonce
ZKProof
Zero-knowledge proof data structure
FieldTypeDescription
proof_datavector<u8>ZK proof data
public_inputsvector<vector<u8>>Public inputs for verification
circuit_idvector<u8>Circuit identifier
verification_keyvector<u8>Verification key
proof_typeu8Proof type (0-2)
proof_versionu8Proof version
NotarisedTx
Main transaction object with all signatures and proofs
FieldTypeDescription
idUIDUnique object identifier
public_txPublicTxPublic transaction data
signaturesvector<TransactionSignature>Counterparty signatures
notary_signatureOption<TransactionSignature>Optional notary signature
zk_proofZKProofTxZK proof transaction data
statusu8Transaction status (0=PENDING, 1=NOTARISED, 2=COMPLETED)
created_atu64Creation timestamp
updated_atu64Last update timestamp
versionu64Transaction version
gas_usedu64Gas consumption
verification_countu64Number of verifications