ZK Compression enables your application to run at scale by reducing state costs by hundreds to thousands of times cheaper. In a nutshell, it saves cost by storing state on the cheaper ledger space while only storing the state roots on-chain.
Is It Difficult to Build on ZK?
The coolest thing about Solana’s ZK Compression is that developers do not need to learn about ZK or ZKPs (Zero Knowledge Proofs) to take advantage of ZK Compression on Solana.
Developers can utilize the Stateless.js
API to interact with ZK-specific RPC which you can already try out using Helius RPCs.
Right now, there is a “compressed” version of the System Program and Token Program that you can try out in DevNet
using Helius which you can use tgo send Compressed SOL and Compressed SPL Tokens!
What Does It Look Like?
You can easily develop the compressed-versions of the Token Program since the name and interface are the same (or almost I think since I haven’t explored everything yet).
In the example below, the createMint
and mintTo
functions are the counterparts of the regular SPL Token Program - the difference is, they’re much cheaper since they’re using compressed states!
If you’d like to learn more about Solana’s ZK Compression, the website ZK Compression is the best resource out there. Also, you might need to register for an account at Helius if you still don’t have since you need an RPC with ZK Compression support.
Looking forward for this to be in mainnet and see how the current applications scale!