Crypto Paradise 👽 𐤊
Crypto Paradise 👽 𐤊 @Rocco_Fornetti ·
#kaspa encyclopedia
Hans Moog Hans Moog @hus_qy ·
Okay, it's time for a little update: I just finished the work on the zero knowledge part of the vprogs framework, which introduces the ability to prove arbitrary computation. It consists of the following 8 PRs that gradually introduce the necessary features: 1. ZK-framework preparations (github.com/kaspanet/vprog…): This PR cleans up the scheduler and storage layers, extends the build tooling with workspace-wide dependency checking, adds the ability to publish artifacts for transactions and batches (which will later hold the proofs), renames some core types for clarity, and introduces lifecycle events on the Processor trait that allow a VM to hook into key scheduler events like batch creation, commit, shutdown, and rollback. 2. Core Codec (github.com/kaspanet/vprog…): This PR introduces a lightweight encoding library for ZK wire formats. In a zkVM guest, every byte operation contributes to the proof cost, so the codec is designed to reinterpret data in-place rather than copying it. It includes zero-copy binary decoding (Reader, Bits) and sorted-unique encoding for deterministic key ordering. It is built for no_std so it runs inside zkVM guests. 3. Core SMT (github.com/kaspanet/vprog…): To prove state transitions, we need cryptographic state commitments. This PR adds a versioned Sparse Merkle Tree that produces a single root hash representing the entire state. It includes all state-of-the-art optimizations: shortcut leaves at higher tree levels to avoid full-depth paths for sparse regions, multi-proof compression that shares sibling hashes across multiple keys, and compact topology bit-packing to minimize proof size. It integrates into the existing storage and scheduler layers so that every batch commit updates the authenticated state root, while rollback and pruning maintain tree consistency. 4. ZK ABI (github.com/kaspanet/vprog…): Defines the wire format for communication between the host and zkVM guest programs, establishing a universal language for proof composition. It specifies how inputs, outputs, and journals are structured for two levels of proving: the transaction processor, which proves individual transaction execution against a set of resources, and the batch processor, which aggregates transaction proofs and proves the resulting state root transition. Because the ABI is backend-agnostic and no_std compatible, any zkVM backend can directly use it (non-Rust zkVMs would need to reimplement the ABI in their language). 5. ZK Transaction Prover (github.com/kaspanet/vprog…): Introduces the transaction proving worker, which receives serialized execution contexts via the ABI wire format and submits them to a backend-specific prover on a dedicated thread. The Backend trait abstracts the actual proof generation, so different zkVM backends can be swapped without changing the pipeline. 6. ZK Batch Prover (github.com/kaspanet/vprog…): Introduces the batch proving worker, which collects the individual transaction proof artifacts, pairs them with an SMT proof covering the batch's resources, and submits the combined input to a backend-specific batch prover. The result is a single proof attesting to the entire batch's state root transition. Like the transaction prover, the Backend trait abstracts proof generation so different zkVM backends can be swapped without changing the pipeline. 7. ZK VM (github.com/kaspanet/vprog…): Wires everything together by implementing the scheduler's Processor trait with ZK proving support. The VM hooks into the lifecycle events introduced in PR 1 to feed executed transactions into the transaction prover and batches into the batch prover. Proving is optional and configurable - it can be disabled entirely, run at the transaction level only, or run the full batch proving pipeline. 8. ZK Backend RISC0 (github.com/kaspanet/vprog…): Provides the first concrete zkVM backend using risc0. It implements the transaction and batch Backend traits, includes two pre-compiled guest programs (one for transaction processing, one for batch aggregation), and ships with an integration test suite that verifies the full pipeline end-to-end - from transaction execution through batch proof generation to state root verification. TL;DR: While the early version of the framework focused on maximizing the parallelizability of execution, this feature focuses on extending this capability to maximizing the parallelizability of proof production. If you're a builder: this is the first version of the framework that lets you write guest programs with a Solana-like API (resources, instructions, program contexts) and have them proven in a zkVM. The current milestone uses a single hardcoded guest program - composability across multiple programs and bridging assets in and out of the L1 are part of the upcoming milestones, but if you're eager to start tinkering, the execution and proving pipeline is fully functional and provides a minimal environment to build and test guest logic today. Once we add user-deployed guests, they will move one logical layer down: the current transaction processor will become a hardcoded-circuit that handles invocation and access delegation to user programs, similar to how SUI handles programmable transactions (including linear type safety at the program boundary). In practice, this means guest programs will be invoked with a very similar API but scoped to a subset of resources, so the basic programming model won't change. Note that guests currently handle their own access authentication (e.g. signature checks) - the framework will eventually manage this automatically. If you want to contribute, two areas where community involvement would be especially impactful: - An Anchor-like DSL for writing guest programs -- the ABI is stable enough to build on, and a good developer experience layer would make this accessible to a much wider audience. - A second zkVM backend (e.g. SP1) - the Backend traits are designed for this, and a second implementation would prove out the abstraction. One thing I find particularly interesting in the context of PoW: the block hash provides an unpredictable, unbiasable random input that is revealed after transaction sequencing. This gives guest programs native access to on-chain randomness without oracles or additional infrastructure - something traditionally hard to achieve in smart contract platforms. PS: I am also planning to start with the promised regular hangouts but since I will visit my family over easter and want to get a better understanding of the open questions next week (it's good to have some problems to wrestle during that slower time 😅), I decided to start with that once I am back (12th of April). Generally speaking, is there a day that people would prefer for these hangouts? I guess monday would be bad as there is already another community event (write your preferences in the comments if you have a strong opinion).
Feat: ZK-framework preparations by hmoog · Pull Request #21 · kaspanet/vprogs From github.com
13
aprendiz 𐤊ripto
aprendiz 𐤊ripto @AprendizMeme ·
OGs on Kaspa - The Future: Virtual Programs = Smart contracts WITHOUT compromising PoW. • No gas wars • No MEV extraction • Parallel execution • Kaspa speed + Ethereum flexibility L2s are coming. Kaspa is ready. 🔥 #Kaspa #vPROGs #SmartContracts #L2
1
15
aprendiz 𐤊ripto
aprendiz 𐤊ripto @AprendizMeme ·
🔓 WHAT FAIR LAUNCH means: ❌ No CEO enriching themselves ❌ No VC getting 40% supply ❌ No pre-mine for "development" ❌ No team tokens vesting for years ✅ 100% mined by community ✅ 100% PoW secured ✅ 100% decentralized Kaspa = How crypto SHOULD launch. 💎 #Kaspa #FairLaunch #Crypto
18
aprendiz 𐤊ripto
aprendiz 𐤊ripto @AprendizMeme ·
🔓 WHAT FAIR LAUNCH means: ❌ No CEO enriching themselves ❌ No VC getting 40% supply ❌ No pre-mine for "development" ❌ No team tokens vesting for years ✅ 100% mined by community ✅ 100% PoW secured ✅ 100% decentralized Kaspa = How crypto SHOULD launch. 💎 #Kaspa #FairLaunch #Crypto
1
19
Kas Vader
Kas Vader @Kas_Vader ·
Replying to @SatsySiren
@SatsySiren @binance We started the movement to the voting contest of Binance Blockchain Week 100. All of us who are in $KAS #Kaspa voted for Yonatan Sompolinsky, the founder of Kaspa. He did win the contest of ‘independent researcher’. Instead he made a post to @binance. x.com/hashdag/status…
Yonatan Sompolinsky Yonatan Sompolinsky @hashdag ·
@binance, Thanks for including me in the top 100 blockchain people list, appreciate the signal! I must decline the Dubai invite though. I do not wish to disrespect, but many of the award voters are avid kaspians who rooted for my kaspa status at least as much as for my or count me out. Crypto has turned from a euphoric cypherpunk project to a house-friendly casino. You may not be the culprit, but as a top player you hold the lion’s share of the responsibility to correct this, and the October crash your USDe oracle glitch helped trigger adds to what needs to be addressed. There are three classes of crypto, as @mert put it recently: commercial crypto, casino crypto, cypherpunk crypto. <<Binance should hold a privilege policy for the latter.>> A TBTF CEX should know better and play a different game with hardcore crypto projects. When binance lists a green frog three weeks post its “launch” but skips a fair-launched-Nakamoto-Consensus-100ms-upgrade-ATH-top-20-the-only-nonbitcoin-marathon-mined project, this is not merely binance rationally calculating; it is also binance molding the market in a way that is alas misaligned with the roots of the movement. You may feel that kaspa’s sovereign money thesis is boring – that bitcoin is already money and that implementing an internet-speed bitcoin is useless - fine. Wrong but fine. But what’s the thesis for the green frog? Money is a classic chicken-and-egg product. It is a scam up until one moment before tipping point, “most of the value comes from the value that others place in it.” Considering your resources and influence, I think it's safe to say you can serve as both the egg and the chicken and make it worth your while to push sound attempts towards tipping point. @cz_binance tweeted recently that “strong projects will be listed.” But binance is part of what defines "strong", it bears responsibility for the market’s compass and impulse and definition of strong. It is not a read-only entity. Binance listing fees are legit, they are just unfit for category cypherpunk. Kaspa devs and early supporters fairly mined less than half what satoshi and hals mined. We don’t have a 20% ZEC-style founders’ reward or protocol-enforced dev fund; this is not a jab at ZEC and the wonderful @Zooko, who was crashing in my car on a late Thursday back in the low ZEC MC days – if somebody deserves to win it is zooko – but assuming binance is not taking a maxi bet, it should revisit its relationship with hardcore crypto. We are here through bull and bear, ICOs NFTs XYZs; and we are the source of confidence that restores faith and capital inflow post meme-induced or CEX-induced crashes. Please fix this. Thanks again, hashdag cc @michaelsuttonil Exhibit A: Binance Innovation Zone Exhibit B: 10 bps Nakamoto Consensus
67