Light Protocol consists of four core on-chain programs that work together to enable ZK compression on Solana. These programs handle state compression, validation, token operations, and access control.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/Lightprotocol/light-protocol/llms.txt
Use this file to discover all available pages before exploring further.
Core Programs
Account Compression
Owns and manages Merkle tree accounts for compressed state
Light System
Validates compressed account operations and state transitions
Compressed Token
SPL Token-compatible program for compressed tokens
Registry
Protocol configuration and forester access control
Program Architecture
The programs follow a layered architecture:Interaction Flow
- Application Layer: Your program or the Compressed Token program creates compressed accounts
- Validation Layer: Light System program validates state transitions and ZK proofs
- Storage Layer: Account Compression program manages Merkle trees and state
- Control Layer: Registry program handles access control and forester coordination
Program Responsibilities
Account Compression Program
Account Compression Program
- Owns all Merkle tree accounts (state trees and address trees)
- Performs tree operations (append, nullify, update)
- Manages tree rollovers when capacity is reached
- Handles batched operations for efficiency
- Validates program access through registered program PDAs
Light System Program
Light System Program
- Validates compressed account ownership and signatures
- Verifies ZK proofs for state transitions
- Manages CPI context accounts for cross-program calls
- Enforces state transition rules
- Coordinates with Account Compression for tree updates
Compressed Token Program
Compressed Token Program
- Implements SPL Token-compatible interface for compressed tokens
- Manages both compressed tokens (in Merkle trees) and CToken accounts (decompressed)
- Handles compression/decompression operations
- Supports Token-2022 extensions (metadata, transfer fees, etc.)
- Manages rent for compressible accounts
Registry Program
Registry Program
- Stores protocol configuration (epochs, fees, network parameters)
- Manages forester registration and work tracking
- Wraps Account Compression instructions with access control
- Handles compressible config accounts for rent management
- Coordinates decentralized tree maintenance
Program IDs
Security
All Light Protocol programs have been audited:- OtterSec - Programs audit #1
- Neodyme - Programs audit #2
- Zellic - Programs audit #3
- Reilabs - Circuits formal verification
Verifiable Builds
All programs are deployed with verifiable builds usingsolana-verify:
Next Steps
Build Custom Program
Learn how to build programs that use ZK compression
Program Examples
Explore example programs and templates