Core components
The SDK consists of several key modules:- Utxo - Unspent transaction output management
- Keypair - Key generation and cryptographic operations
- Prover - Zero-knowledge proof generation
- Transaction functions - Build and submit transactions
Installation
Clone the repository and install dependencies:Quick start
Here’s a basic example of creating a deposit transaction:Key features
Privacy by default
All transactions use zero-knowledge proofs to hide sender, recipient, and amount information on-chain.UTXO model
The SDK implements a UTXO-based system similar to Bitcoin, where each transaction consumes inputs and creates outputs.Encrypted data
UTXO data is encrypted using the recipient’s public key, ensuring only they can access transaction details.Merkle tree tracking
The SDK automatically builds and maintains Merkle trees of commitments for proof generation.Architecture
The SDK follows this transaction flow:- Create input and output UTXOs
- Build Merkle tree from on-chain commitments
- Generate zero-knowledge proof
- Submit transaction to TornadoPool contract
Next steps
Utxo class
Learn about UTXO creation and management
Keypair class
Generate keys and handle encryption
Proof generation
Create zero-knowledge proofs
Transactions
Build and submit transactions