argent now has a first implementation of covenant genesis proofs:
https://t.co/u4G36X0lkE
idk how to emphasize this enough, but i expect *every stateful covenant* deployed on kaspa to eventually provide such a proof.
the goal is a verifiable link from a covenant id back to the source code, deployment parameters, and genesis state that produced it.
we should strive for an ecosystem where explorers expose this proof data for every covenant id they discover onchain, assuming its deployers want public trust.
think of it as the analogue of contract verification on etherscan, extended to stateful covenants: you should be able to inspect what a covenant is, audit the code behind it, and verify how it was instantiated.
kudos to @supertypo_kas for being an early-bird example of such a proper deployment process:
https://t.co/B6g9H0C9x1 (not sure if the sil contracts themselves are public yet)
you can build a kaspa vault that only lets you spend once a price condition is met.
silverscript’s HodlVault example checks your signature and a signed price message from an oracle, an outside source of data.
kaspa checks that the message meets the contract’s conditions. you’re still trusting the oracle to report the price accurately.
the example code is in the comments for devs to build from.
based apps can use kaspa to order user transactions while maintaining balances and other shared app data off-chain.
the app processes that activity and produces a proof that the recorded instructions changed its state according to its rules.
an L1 covenant checks the proof against kaspa’s recorded activity and validates the update.
the L1 support for this has been available since the toccata hf.
toccata added a native ZK proof verifier to kaspa’s L1.
an app can do expensive calculations off-chain, then submit a proof that it followed the programmed rules.
a covenant checks the proof and makes sure the transaction applies the proven result.
kaspa calls this inline ZK.
bitcoin dev's were discussing covenants back in 2013.
bip-119 later proposed one approach to covenants, restricting spending to a predefined transaction template. it was never activated on btc tho.
kaspa’s covenants go further (covenants++ if you like). scripts can enforce spending rules, carry application state forward and let that state split into branches that progress independently. multiple contracts can also update together in one transaction, with all changes accepted or none of them.
dev's write that logic in silverscript, which compiles it into scripts kaspa enforces on L1.
In The Godfather, Michael Corleone inherits more than his father's empire. He inherits its rules.
Imagine money working the same way.
You receive 1,000 coins, but they come with a condition: whenever you spend them, the recipient must inherit that condition too.
That's the idea behind recursive covenants.
With Kaspa's programmable UTXOs, money can carry enforceable spending rules across transactions.
The family business just went on-chain.
kaspa:native
Sending some 💚 to all exchanges supporting kaspa:native spot trading!
Thank you for recognizing Kaspa and helping bring it to the world.
The technology speaks for itself.
The community keeps growing.
The adoption continues.
To other exchanges: What are you waiting for? 👀
#Kaspa