Validiums settling transaction data on Celestia

Hi everyone, I just wanted to caveat by saying I’m not well versed with Celestia’s architecture yet, but I was encouraged by Nick to write a short post on this.

Validiums are gaining prominence on Ethereum, with Sorare and Immutable X settling millions of NFTs. Indeed, Sorare has quietly become one of the most popular dApps in the space with 500,000 MAUs and growing exponentially, and Immutable X raised $60M Series B yesterday with many top NFT and gaming related dApps deploying on it over the coming months. Currently, the StarkEx validiums have a data availability committee with reputable entities in the industry like ConsenSys and Nethermind. While the proofs on Ethereum ensure validity/security, this is a very problematic solution for liveness as invalid or offline data (held by a centralized committee) as verified by the smart contract on Ethereum will freeze the validium. Tom Brand from StarkWare has said they are looking at more solutions for StarkNet, but nothing specific announced this far.

zkSync 2.0 will also have a validium mode, but they are building their own zkPorter consensus mechanism from scratch. Likewise, Polygon are building Avail for their future validiums (and other usecases).

So, it comes down to two options currently - centralized data availability or spinning up a consensus mechanism.

This is where Celestia can play a role. Once zkSync 2.0 and StarkNet are released and open-sourced with the technology accessible, I anticipate we’ll see many players enter the validium/volition space leveraging Ethereum for validity, while looking for a data availability solution. Long term, I expect validiums to replace sidechains entirely. These validiums will be interested in a plug-and-play solution where they can publish validity proofs on Ethereum and all/most transaction data to Celestia - which is more decentralized than a committee and easier/better than creating your own consensus mechanism. I have no idea how or if this can be accomplished technically, though - just sharing my broad thoughts.

4 Likes

Thanks for your post! As you know, we are really respect your opinion and are deeply aligned with you on the correct path to scaling blockchains–rollups (including validiums) + data availability layers like Celestia :raised_hands:

I was not aware of the rapid growth in Validiums like Sorare and Immutable X. This is a very important development that Celestia absolutely should know about. Most of our discussions so far have been about rollups and not validiums. This knowledge could change our go to market strategy and hence what features we prioritize in v1.


These validiums will be interested in a plug-and-play solution where they can publish validity proofs on Ethereum and all/most transaction data to Celestia - which is more decentralized than a committee and easier/better than creating your own consensus mechanism. I have no idea how or if this can be accomplished technically

My gut reaction is absolutely yes it can be accomplished technically and Celestia would be the perfect solution to this problem for validium chains. Celestia provides an extremely scalable consensus and data availability service where validium chains can post their transactions/blocks to ensure their ordering and availability so that the rollup cannot be permanently frozen.

It will be decentralized and far cheaper/easier than spinning up a consensus mechanism for it. In addition, we are designing it such that the rollups who use Celestia will have minimal overhead and will have to make minimal trust assumptions to use Celesta for data availability.

Can you help explain what validiums are?

To understand this better and give a more nuanced response, can you help me understand specifically the difference between a zkRollup and a validium? Is it that a validium does not worry about the ensuring the data availability of its transactions? Or simply that the validity/security layer is decoupled from the DA layer?

Another question is, what specific services does the validium need that Ethereum as the validity/security layer does not provide? Celestia provides both consensus and data availability. Is it important that the validium transactions/blocks be ordered as well as published?

Sure, validiums are basically zkRs with validity and DA decoupled, like you said. Volitions take this further where the users have a choice to post transaction calldata either on-chain or off-chain, effectively selecting between rollup and validium modes. Both Immutable X and Sorare are transitioning towards being volitions. I call them the “best of all worlds” where a single composable state can be settled across multiple data availability sources. Both zkSync 2.0 and StarkNet - the first two EVM-compatible rollups - are actually volitions. So, while I talk about rollups, in reality I see most execution layers ending up being volitions long term.

Realistically, Ethereum is going to remain the most secure and decentralized base layer for verifying validity for the foreseeable future. But it has a crippling weakness, at least till data sharding is released - exorbitant calldata costs. This tends to make up 99% of an active rollup’s costs, so using a different solution or at least offering an option is prudent. Like I mentioned above, validiums today are either using centralized DA solutions, or deploying their own consensus mechanisms - so there’s clearly product-market fit for a DA layer validiums/volitions can use easily.

How it could work is: the volition/validium will order transactions, generate a validity proof and post it to Ethereum; transaction data (in compressed form) to Celestia. The smart contracts on Ethereum will need some way to verify that data on Celestia is valid and available, else it’ll freeze the validium - enforcing security even if DA fails.

Thanks for that explanation of validiums and volitions! I’m intrigued to learn more.

How it could work is: the volition/validium will order transactions, generate a validity proof and post it to Ethereum; transaction data (in compressed form) to Celestia. The smart contracts on Ethereum will need some way to verify that data on Celestia is valid and available, else it’ll freeze the validium - enforcing security even if DA fails.

Putting my thinking cap on here, the issue I see is that Celestia’s DA proofs are interactive meaning that smart contracts won’t be able to use them. I know there has been talk of ways to make them non-interactive but I don’t think that will be ready in the v1 that we have currently planned (@musalbas can elaborate).

However, the only advantage of using a DA proof is that it doesn’t require an honest majority assumption of the Celestia validators. If the validiums are fine to assume that the Celestia validator set is honest then they can just verify the signatures of the block header where the validium transactions were posted.

I guess what I’m asking is how sensitive are these validiums to honest majority assumptions on the part of the DA layer that they’re relying on? If they’re okay with that in the short term, then Celestia will be fine until we build some kind of non-interactive DA scheme that a contract on Ethereum can verify.

I’m afraid this is where my limited knowledge about Celestia ends. Perhaps some validiums will be OK with this given they themselves can be the 1 honest party. But I suppose validiums will see KZG commitments instead of interactive fraud proofs as an advantage.

1 Like

I think you’re rigth about the fact that KZG committments or other non-interactive DA proofs would be preferred for this use case. The question is would validiums be okay with using a DA layer without non-interactive DA proofs at the beginning so long as they were planned to be rolled out eventually. That’s one that only the validium teams can answer however.

1 Like

ZK rollups with off-chain data availability (i.e. validiums) can use Celestia for data availability instead of a data availability committee. This still fits within the threat model of validium off-chain data availability, even if the rollup clients are not verifying data availability proofs but only a 2/3 signature by the Celestia validator set. There has also been some initial work on building an EVM-compatible light client for Celestia, to allow an Ethereum smart contract to check that Celestia block headers have consensus.

In terms of using Celestia for on-chain data availability while having the data availability proofs verified by an Ethereum smart contract, KZG commitment based data availability proofs are still interactive, because you still have to do sampling. If you want Ethereum smart contracts to verify data availability proofs on third party chains, new opcodes would have to be introduced to the EVM which would require a hard fork.

1 Like

Thanks for the clarification! That was my initial thought too - it should be feasible to replace a DAC with Celestia or other DA layers. I definitely think there’s a product-market fit here, then, as I’d expect many more validiums/volitions to be launched over the coming years after StarkNet and zkSync 2.0 set a precedent.

2 Likes