Project Name: Redot
Description: Polkadot Re-Staking Layer. Run Polkadot on Bitcoin and use Polkadot as the DA layer.
Milestones: A total of 3 milestones, currently applying for the 1st milestone
Total Amount: 45,200 USD (DOT 6655.868)converted to DOT at ema7 price: 6.791 USD/DOT as of January 31, 2024
ETD: 10 to 12 weeks
A common analogy: We can understand the DA layer as a computer's memory, Polkadot as the CPU, and Redot as the motherboard connecting them.
Blockchain is essentially about running user-submitted data on nodes and achieving consensus among all nodes on the outcome of that data in some way. As the amount of data submitted by users grows, the synchronization of data between nodes becomes increasingly problematic, with some nodes potentially unable to synchronize, leading to inconsistent results between them. We need a mechanism to ensure that this data can be completely downloaded, which is where the data availability (DA) layer comes into play.
In fact, such mechanisms already exist internally in Polkadot, where the Relay Chain first ensures the data availability of the Parachains. Ethereum has established a tightly-coupled DA layer, and Near has also established a data availability layer. Additionally, there are several third-party data availability layers that have been optimized for either cost efficiency or enhanced security.
The Data Availability (DA) layer is one of the most important areas in blockchain in the coming years. It is widely used in both modular blockchains and sovereign blockchains, concepts that are slightly controversial:
Modular Blockchains
A modular blockchain relies on the security of the settlement layer (L1) and requires verification by this layer. For example, in Rollup designs, data is not stored on-chain, but rather, only the address and commitment of the data is stored in a small space. When running a challenge game, the actual data is sent to the chain, and cryptography ensures its accuracy. However, if challengers cannot download the original data, they cannot run it to detect errors, and therefore cannot initiate challenges. Even a single byte of maliciously hidden data can pose a risk of fund theft.
The settlement layer needs to ensure that data is complete and available when Rollup sends the data address and commitment to the chain. For this purpose, Ethereum has established a DA layer. However, it is prohibitively expensive, leading many L2s to use third-party DA layers, which are usually much cheaper, giving them a cost advantage in competition with other L2s. The trade-off is a sacrifice in security, as Ethereum does not know whether the data in these third-party DA layers is available. Third-party DAs need to cross-chain the data availability to the settlement layer through a DA bridge. These bridges often have only a small scale of validators, making them quite vulnerable for the infrastructure.
Sovereign Blockchains
Sovereign blockchains do not rely on L1 for transaction verification but use L1 as a kind of infrastructure. For example, RMRK can be seen as a prototype of a sovereign blockchain, using Kusama as a message queuing service. We only need to run a simple indexer to ensure security. Although this design is elegant and charming, its fatal flaw is the inability to store large amounts of data or deploy smart contracts.
If we store these data on the DA layer and only save the address and commitment of the data on-chain, we can run a simple indexer to ensure security. We can not only deploy smart contracts but also pack block data directly into the DA layer, giving birth to another mode of blockchain. Many Bitcoin L2s are using this method.
The principle of the DA layer is to expand the data to several times its size, for example, doubling it. Any 50% of the data can recover the original data. We can sample a small section of the data randomly. If the sampling is successful, we have a 50% chance of recovering the data. After multiple samplings, we can ensure that it is probabilistically available. If the data publisher hides the data, it will lead to sampling failure.
However, the data publisher might later reveal the data, posing a challenge to sovereign blockchains dependent on the DA layer. Indexers lagging in blocks might treat unavailable data as available, causing a fork. We need a mechanism to persist the data availability status to ensure all indexers get the same result.
Sharing Polkadot's Security in the DA Layer
Although Polkadot does not have the capability to sample other DA layers, we can solve this with re-staking. Theoretically, attacking the re-staking layer would require attacking the Polkadot network, making the security of the re-staking layer nearly equivalent to that of Polkadot. Redot provides a light client that Polkadot validators can run at a low cost, sample the DA layer, and submit the results to Redot's Parachain, ultimately secured by the Polkadot Relay Chain.
Modular blockchains can obtain DA layer information through Polkadot's cross-chain security capabilities. Sovereign blockchains can directly access Redot's data off-chain to reach a consensus on data availability. We allow all modular and sovereign blockchains the opportunity to share Polkadot's security.
We will also develop a framework for quickly launching a sovereign blockchain. It operates like RMRK, except that the data address and commitment are submitted on-chain. You can launch a sovereign blockchain on Polkadot or Ethereum. As an example, we even run a sovereign blockchain form of Polkadot on Bitcoin, using Polkadot itself as the DA layer.
The above is a very simple description; the actual situation is much more complex. You can learn more in our white paper.
We have completed the data availability layer product and just launched the development testnet at https://melodot.io/
We have completed the Proof of Concept (PoC) work. You can find the PoC in the Redot repository. It overlooks some security issues and tests, but it is functional and has a simplified complete process. It already includes the following modules:
Redot is divided into three milestones, currently applying for the first milestone.
Estimated delivery: 7 months
Time: 1470 Hours
FTE: 2
Hourly Rate: $80
Total Budget: $117,600
Estimated delivery: 10 to 12 weeks
Time: 565 Hours
FTE: 2
Allocated Budget: $45,200
No. | Name | Description | FTE | Total Hours |
---|---|---|---|---|
0 | Docker | Support running Redot through Docker, we will create and publish images to Docker Hub | 1 | 5 |
1 | Documentation | All public interfaces have inline documentation, and we will also provide a guide for users. | 1 | 20 |
2 | tasks pallet | Task-related Pallet, including key initialization, key rotation, task management, task result upload, slash interface, coordinator mechanism, task point settlement. | 2 | 120 |
3 | validator fetch | Supports synchronization of the Polkadot validator set from processes and RPC, compatible with node and operator light clients. | 1 | 60 |
4 | validator pallet | Validator management and reDOT management, including validator registration, status management, Claim, Slash interface, reDOT Staking, relay chain validator status synchronization mechanism, reward collection, etc. | 2 | 120 |
5 | ImOnline | Similar to Substrate's ImOnline Pallet, but we need operators to submit heartbeats through the light client, which requires redevelopment. | 1 | 30 |
6 | application pallet | Pallet for managing applications and fees. Allows registering applications, starting and stopping tasks, deposits and withdrawals. Settles fees at the end of the epoch. | 1 | 60 |
7 | primitives | Improve threshold signature encryption primitives and support the coordinator mechanism. Add other cryptographic primitives needed for Redot. | 1 | 50 |
8 | Validator Client | Improve the identity publishing mechanism of the DHT network, enhance the security of the gossip protocol, add a validator permission system, add coordinator mechanism, coordination of key rotation mechanism, support submitting validator misconduct. | 2 | 100 |
Total: | 565 |
further details in our main doc
Name | Description |
---|---|
Docker | Support running Redot through Docker, we will create and publish images to Docker Hub |
Documentation | All public interfaces have inline documentation, and we will also provide detailed guidance for validators to join Redot. |
Light Client Refactoring | Refactor the entire framework using Smoldot. |
ImOnline | Light client heartbeat module. |
VDaser | Abstract module for DAS-like tasks |
Melodot Support | Support Melodot's data availability sampling in an embedded manner |
Celestia Support | Support Celestia's data availability sampling and fraud proof processing. |
Avail Support | Support Avail's data availability sampling in an embedded manner |
Frontend | Dashboard for validators, allowing validators to join the network and view network status. |
further details in our main doc
Name | Description |
---|---|
Documentation | Will provide detailed usage guides for users, including examples. |
SDK | SDK to get persistent data availability from Redot, used in nodes including off-chain scenarios. Supports both Go and Rust languages. |
DAHub | A way to synchronize data availability to Ethereum or other L1s by directly verifying aggregated signatures. As a cheaper and more flexible alternative to Polkadot cross-chain bridges, this is very useful early on. |
Polkadot on Bitcoin | The relay chain client, including Sequencer, Indexer, and XCMHub, provides decentralized indexing services and a messaging hub, and utilizes native Polkadot as the DA layer and underlying consensus. |
further details in our main doc
Unlocking Mechanisms Beyond Parachains
Using Polkadot as a messaging queue service and leveraging the DA persistence provided by Redot will unlock usage models for Polkadot beyond parachains, and use DOT as Gas.
Transforming Polkadot into a Global Consensus Layer
Built on Polkadot's security, the DA capability brought by Redot will turn Polkadot into a global consensus layer for the blockchain ecosystem. This will attract more funding, further consolidating Polkadot's security, thereby forming a growth flywheel.
Parachains as Diversified Settlement Layers
There's a view in the community that Polkadot doesn't need Rollups. We believe this is debatable. Rollups are not just L2; they have a broader design space. You can learn more about this here. Polkadot's parachain mechanism helps give rise to more diversified Rollup design patterns, bringing richer applications and further strengthening the Polkadot ecosystem.
Can we directly use Polkadot's own DA?
No, Polkadot's DA serves the relay chain, and it is entirely different from the DA layer available for other chains to use.
Does it affect the security of the Polkadot consensus layer?
There is no theoretical proof or disproof of this. However, the emergence of re-staking is a market-driven behavior, and it's inevitable. We will continue to study its impact on the original consensus layer, both positively and negatively.
Why seek treasury funding?
Will you always rely on treasury funding?
No, in the future, development funds will be obtained through Redot's treasury and the ecosystem itself. Regardless, we will continue to move forward.
Can you deliver on time?
We completed Melodot with the funding from W3F, all milestones were delivered on time and received positive feedback. We have extensive experience in developing for the Polkadot ecosystem and data availability layers and value our reputation highly.
Hi @ZeroDAO
Please help me understand why is it beneficial to Polkadot to make life easier to competing L1 chains?
If the relevant projects want to implement such capabilities, then would it not be easier to develop their solutions directly in Polkadot?
I am not very fond on patching [insert your preferred adjetive, or expletive, here] technology (i.e. BTC, ETH) when the same use-cases would be better catered in Polkadot.
Your thoughts?
Thanks again!!
Milos
Dear Polkadot Community,
We genuinely seek to hear your voice. Whether you support or oppose our proposal, your opinions are highly valued and welcomed. Each piece of advice and concern you provide will greatly aid us in better understanding the community's needs and expectations, and will guide us in making necessary adjustments to our project.
Thank you once again for your valuable time and feedback. We look forward to continuing our dialogue with the community and are committed to collaboratively advancing the development of the Polkadot ecosystem.