Excited for the $BLOCX TaskOn campaign! Join @BLOCX_TECH to earn rewards by completing fun Web3 tasks. Don’t miss out—start now! 👉 https://t.co/Fd3OTRPNUE #BLOCX#Web3#CryptoRewards
🚀 GRIDBOX is Now Live
We’re proud to roll out the latest version of GRIDBOX — the most intuitive decentralized GPU marketplace by BLOCX.
Rent. Host. Earn.
Put your hardware to work and start earning today.
And this is just the beginning — more features, templates, and an even more user-friendly experience are on the way.
The marketplace is now open to the world. 🌍
⏳ 2 days until launch.
With GRIDBOX, you don’t just rent power — you own your place in the network.
From AI to gaming to mining, the future of compute is almost here. 🔥
Hi $kas. @hashdag just dropped a very important post about the L1/L2 zk SC design for $kas he has been fervently working on with @MichaelSuttonIL, @dimdumon, @VolokhIlia, and others:
https://t.co/fAJJc1zeNd
This post, for me, is the ultimate answer to "what is Kaspa good for?".
Not unexpectedly, this is a post written for peers, whereby it is densely written and relies on considerable jargon (sometimes internal jargon whose meaning is left for the reader to understand from context). Here is my best attempt to distill the key point for less technical readers.
The core notion of the entire discussion is atomic composability. In the context of computation, the term "atomic" usually means that an action is indivisible, it is either carried out in its entirety or not at all. The textbook example is transferring money from your bank account -- when you do, two things must happen: your balance is reduced, and the recipient balance is increased. However, we cannot tolerate a situation where only one of these things happened. It is the bank's responsibility to make sure that either all related balances are appropriately updated, or the action doesn't go through at all.
An example that is more on point is cross-chain transactions. Say I want to pay someone some USDT to buy some Kaspa. How can we make sure that either both of us or none of us transfer the money? The current solutions such as CEXes or escrow services are far from perfect, and have been exploited many times by schemers and hackers.
Is it possible to "atomize" this process? To somehow guarantee, cryptographically, that either none or both of the transfers take place? This problem is called "atomic transfers", it is the simplest problem in discussion, and it is already quite difficult. In particular, it requires two disparate chains to depend on one another. But it is more complicated than that: one can think that having an SC on chain A that only transfers money once its counterpart was transferred on chain B could be a solution, but they would be wrong. Say that for some reason the transaction on chain A reverts, would chain B be programmed to return the money? What if it was already spent? Say that the code on chain B had a bug or a malicious backdoor, chain A never checks that chain B transferred the money correctly. If you have both chains observing each other, who is the one to make the first move? You see where this is going.
Atomizing transactions is just one example. Some operation are atomic by nature, you can't "partially" process a simple transaction from one UTXO to another. Either it is processed or it is not. A holy grail of having interoperable SC L2s is the ability to take two atomic operation and transform them into a new atomic operation that does both. This is what we call "atomic composability".
Obtaining atomic composability within a single "logic zone" (a term used in the post, roughly meaning some domain of assets all controlled by the same state) is not trivial, but possible. The real challenge is enabling actions that affect several logic zones in an atomic way. Cross chain transfers are a prototypical example. Currently, the way to wrap one coin in another network is to have a bridge operator that holds on to the wrapped coins and issues tokens on the destination chain. We have to trust the operator to hold on to enough liquidity to allow all users to cash out their tokens if they want to. Such services are hard to establish, centralized and costly.
Imagine if instead we could have just atomized locking coins on one chain while issuing tokens over the other, where the lock can only be opened by burning the tokens. If we had an infrastructure that allows us to atomically compose operations that affect both logic zones (the original chain and the chain holding the wrapped tokens), we could do that!
The trade-off in SC design pretty much boils down to these two extremes:
- logic zones that do not sequence on-chain cannot be verified from the chain, and hence cannot provide atomic composability across logic zones. They thus have to resort to async composability. There are several ways to achieve this type of composability, but the bottom line is that it requires some protocol where each logic zone interacts with the other logic zone and waits for a response. This means that, while working within the logic zone might be very fast, multi-logic transactions become as slow as the settlement times of the involved chains.
- Using on-chain sequencing to achieve composability allows the verifiers of the base layer to make sure all conditions properly holds on both sides before processing the operation, providing the sought-after atomicity. The deterrent to this approach is that on-chain sequencing means that progressing the state of the logic zone is subject to the latency and costs of using the base layer.
This trade-off is a difficult one. Since L1s are limited in their throughput and latency (and since support for on-chain sequencing has to be developed on the L1) we see mostly the former type. However, this is where Kaspa comes in. Given the superior throughput and latency it provides, it could provide us with a best-of-both-worlds solution: providing the luxury of multi-logic atomic composition with internet-fast latency and reasonable operational costs. Or as described in the post: "I think that the construction I’m proposing here extracts the best of all architectures: Bitcoin, Ethereum (rollup-centric roadmap), Solana—an internet-speed version of Nakamoto base layer (verification-oriented), a zk-based computation layer, and a Solana-like unified defragmented state."
(N.B. One point absent from the post that's worth mentioning is that existing chains do not have to migrate to Kaspa to use this feature. There are several possible hybrid designs, such as using the same verification they use today, but adding a component sequencing over Kaspa for the sake of atomic transactions. This is essentially what Yoni meant when he talked about using Kaspa as "a sequencing layer for Ethereum" and it is, in my opinion, a fantastic use case.)