paint-brush
Opside Litepaper V2 Released: Introducing a Multi-chain ZK-PoW Mechanismby@lumoz
253 reads

Opside Litepaper V2 Released: Introducing a Multi-chain ZK-PoW Mechanism

by Lumoz (formerly Opside)June 20th, 2023
Read on Terminal Reader
Read this story w/o Javascript

Too Long; Didn't Read

Opside is a decentralized ZK-RaaS platform as well as a PoW (Proof of Work) network that facilitates ZKP (Zero-Knowledge Proof) mining. It employs a hybrid consensus mechanism combining PoS and PoW. This platform offers a unique feature for Web3 developers, namely, the ability to generate zkEVM application chains.

People Mentioned

Mention Thumbnail
featured image - Opside Litepaper V2 Released: Introducing a Multi-chain ZK-PoW Mechanism
Lumoz (formerly Opside) HackerNoon profile picture


What is Opside?

Opside is a decentralized ZK-RaaS (ZK-Rollup as a Service) platform as well as a PoW (Proof of Work) network that facilitates ZKP (Zero-Knowledge Proof) mining. It employs a hybrid consensus mechanism combining PoS and PoW. This platform offers a unique feature for Web3 developers, namely, the ability to generate zkEVM application chains with a single click. The multitude of ZK-Rollups brings about a substantial need for computational power, creating a beneficial mining environment for global miners.


The notion of L2 is widely recognized in scalability solutions. However, L2 doesn't adequately manage diverse types of hardware resources such as data availability, ZKP computational power, or packaging nodes. Furthermore, operating an L2, especially a ZK-Rollup, requires considerable hardware maintenance costs and a high level of technical proficiency, which can be off-putting for many developers. To address these challenges, Opside introduced the ZK-RaaS concept. This service allows developers to launch their zkEVM chains within a minute, without needing detailed knowledge about ZK or chain nodes. Opside also introduced the ZK-PoW concept, inviting miners to participate in maintaining zkEVM and calculating ZKPs.


Opside's objective is to simplify ZK-Rollup usage and promote its wider adoption, thus facilitating the large-scale deployment of zkEVM-based application chains. Developers can deploy their ZK-Rollup (zkEVM) across multiple chains with a single click. For miners, Opside serves as a multi-chain PoW protocol, supporting ZK mining and generating zero-knowledge proofs for ZK-Rollups across various public chains.


ZK-RaaS

ZK-RaaS (ZK-Rollup as a Service) provides a one-click ZK-Rollup generation service to all users. Opside offers a general ZK-Rollup launchpad, enabling developers to effortlessly deploy different types of ZK-Rollups onto different base chains. These base chains include Ethereum, Opside chain, BNB chain, Polygon PoS, and other public chains. Types of ZK-Rollup (zkEVM) encompass zkSync, Polygon zkEVM, Scroll, StarkNet, and other zkEVMs, as well as other varieties of ZK-Rollups.


Opside deploys a Rollup System Contract (RSC) on each base chain to manage the lifecycle of Rollups on that chain, including registration, suspension, and withdrawal. By leasing a Rollup slot with a certain number of IDE (Opside native tokens), developers can own a ZK-Rollup.


The idea of a Rollup slot is comparable to a slot in Polkadot or an application chain in Cosmos. However, Cosmos' application chain requires maintaining its own consensus layer and cross-chain bridge, presenting substantial security risks. Conversely, ZK-Rollup applies ZK technology, mathematically ensuring the shared consensus and data availability layer between Rollup and the base chain. This method is more secure, more decentralized, and incurs lower maintenance costs.


Upon leasing a Rollup slot, developers gain an independent execution environment, where they can own a unique ZK-Rollup chain. Developers can fully control the ZK-Rollup, and customize its economic model, including the selection of gas tokens. They can freely adjust gas fees, even to zero, thereby exempting users from paying any fees.


Developers are not burdened with any hardware costs. All hardware resources, such as data availability, sequencer, and ZKP computing power, are decentralized and provided by the Opside ZK-PoW cloud.


Moreover, native cross-rollup communication can be implemented among different ZK-Rollups on the same base chain. It is a message communication mechanism enabling an address on one rollup to directly interact with a contract on another rollup. This feature significantly addresses the fragmentation of user assets and enhances interoperability between applications.


Opside ZK-PoW Cloud


Compared to OP-Rollup, ZK-Rollup has several advantages including enhanced security, trustless operations, and faster withdrawal speeds. A key technological difference is that ZK-Rollup requires robust ZKP computational power to generate zero-knowledge proofs.\

Opside's Multi-chain ZK-PoW Mechanism

The multi-chain ZK-PoW mechanism of Opside ZK-PoW Cloud will be deployed on multiple chains including, but not limited to, Ethereum, BNB Chain, Polygon PoS, and Opside Chain itself. With the design of Opside, developers can deploy ZK-Rollups on these different base chains. As the technology of ZK-Rollup matures, we may see hundreds or even thousands of ZK-Rollups, leading to a significant demand for ZKP computational power.


After the transition from Ethereum PoW to PoS, many Ethereum mining machines lost their application scenarios. The value of these machines, in terms of capital scale, is around 12 billion USD, with many currently idle. With the large-scale implementation of ZK-Rollup, the generation of ZKP requires a lot of hardware and mining machines, such as CPUs, GPUs, and FPGAs, to provide computational capacity.


Opside uses the ZK-PoW mechanism to incentivize miners to provide ZKP computational power, thereby offering comprehensive hardware infrastructure for ZK-Rollup. This is one of the core ideas of Opside. All participants, including users, developers, and miners, can benefit from this Opside economic model.


Two-step submission mechanism for ZKP verification

To encourage more miners to participate in ZKP calculation tasks simultaneously, Opside has proposed a two-step submission mechanism for ZKP verification. The share of PoW rewards for a ZKP will be distributed to the effective ZKP submitter, the miner, according to certain rules.


  1. Submit proofhash: Within a specified timeframe for a certain sequence, multiple miners can participate in the computation of zero-knowledge proof. After each miner calculates the proof, they don't submit the original proof directly but compute the proofhash of (proof/address) and submit this proofhash to the contract.


  2. Submit ZKP: After the timeframe ends, the miner submits the original proof and verifies it against the previously submitted proofhash. Miners who pass this verification receive PoW rewards, with the reward quantity distributed according to the miner's stake. Please refer to ZKP's Two-Step Submission Algorithm for further details.


Optimized ZKP Generation Algorithm

When Rollup's smart contract verifies the ZKP, if the original proof is submitted, it could potentially incite on-chain attacks. To avert such attacks, ZK-Rollup often performs additional operations to obscure the original proof data. Opside's innovative two-step submission algorithm for ZKP leverages a "submit first, verify later" approach, circumventing unnecessary aggregate computations for proof and address.


Moreover, in some open-source zkEVMs, ZKP calculation and submission occur sequentially. This can become a bottleneck when ZK-Rollup submits a large number of sequences, as miners can't compute multiple ZKPs concurrently. Opside's two-step submission algorithm enables parallel computation and sequential submission of ZKP, allowing miners to perform multiple ZKP generation tasks simultaneously and significantly enhancing ZKP generation efficiency.


The Opside team also enhanced the ZKP recursive aggregation algorithm, markedly improving machine resource utilization in the cluster and further accelerating ZKP computations. Stress tests in practical environments showed that miners using a machine cluster of 20 units (each with a 128-core CPU and 1TB RAM) sustained a transaction rate of 27.8 TPS for approximately 40 minutes. Under similar conditions, Opside managed to slash the average transaction confirmation time from roughly 5-6 minutes to about 3 minutes, enhancing the ZKP generation efficiency by about 80%.


With the participation of more ZK-Rollups and miners, the demand and supply scale of the ZKP computational power market will continue to expand, making the efficiency improvements offered by Opside's PoW algorithm increasingly noticeable.


Opside Chain

The Opside Chain, as one of the base chains, not only supports the Opside ZK-PoW Cloud but also offers further optimizations for ZK-Rollup. These include the use of precompiled contracts for accelerated ZKP verification, data sharding support, and the adoption of a PoS consensus based on ETH 2.0. Future support will also be extended to EIP-4844, DankSharding, and other full-shard solutions, potentially reducing Rollup gas costs to near zero.


Ethereum currently stands as the world's largest decentralized network, boasting over half a million nodes. These nodes offer significant decentralization and, looking to the future, are set to provide tremendous data availability thanks to data-sharding technology. Inspired by Ethereum, Opside Chain has chosen to enhance the PoS consensus derived from ETH 2.0. We predict that Opside Chain will have an impressive network of over 100,000 nodes.


When considering Rollup, the question arises of how to decentralize the sequencer further instead of relying on a singular node for centralized packaging. A practical approach is allowing Opside Chain's block proposers to also propose blocks for the Rollup Layer, effectively separating the roles of builder and proposer. The builder is supported by a permissionless P2P network, while the proposer leans on Opside Chain's block proposer. This methodology eliminates the availability risk of a single node while maintaining resistance to Miner Extractable Value (MEV) and censorship.


Consequently, Opside Chain presents a standardized decentralized sequencer mechanism, with its block proposers also proposing blocks for the Rollup. In this way, ZK-Rollup not only inherits security from the higher layer but also its degree of decentralization.


Opside Chain introduces a mixed consensus model involving PoS and PoW:


  • In the Opside chain:
    • PoS: Opside plans to adopt and modify Ethereum 2.0's PoS algorithm. It allows anyone holding Opside tokens to become a validator, who can then receive block rewards and gas fees within the Opside chain.


  • In the Rollup layer:
    • PoS (Sequencer): Validators propose blocks in both the Opside Chain and the Rollup Layer (i.e., data batches). Hence, they also serve as sequencers in the Rollup Layer, where they can earn gas fees from transactions.
    • PoW (Prover): Any individual with sufficient computational power for ZKP calculations can become a prover in the Rollup Layer. Under PoW rules, provers generate zk-proofs from the Rollup Layer blocks submitted by the sequencer.


Drawing a comparison, a ZK-Rollup is akin to a computer, with the hard drive represented by the data availability offered by PoS and the CPU mirrored by the computational power granted by PoW. Opside Chain's task is to strike a balance between PoS and PoW, enabling all parties to maximize their contribution and benefits, thereby enhancing the performance and user experience of a large-scale ZK-Rollups network.


Supply and Demand of IDE Tokens

Regarding the supply and demand of tokens, Opside tokens (IDE) will be minted as PoS and PoW rewards, catering to Validators and Miners, respectively. During the Pre-Alpha test net phase, the block reward ratio of PoS to PoW is temporarily set at 1:2. In the future, this ratio will dynamically adjust based on the network's ZKP computational power supply-demand relationship.

PoS rewards

As previously stated, Opside Chain employs an enhanced PoS consensus based on ETH 2.0. To act as a Validator, users must deposit a certain amount of IDE tokens into a deposit contract and operate three separate software modules: an execution client, a consensus client, and a Validator. These Validators oversee the validation of new blocks circulated across the network and occasionally generate and propagate new blocks themselves. If a Validator is found to be dishonest or inactive, their staked IDE will be forfeited as punishment.


Under the PoS mechanism, Opside Chain maintains a fixed rate of block production. The timeframe is subdivided into slots, each lasting 12 seconds, and epochs, composed of 32 slots. Within each slot, a validator is selected at random to propose a new block. This validator is tasked with creating and broadcasting the new block to the rest of the network. Likewise, a committee of validators is chosen randomly during each slot, whose collective votes confirm the validity of the proposed block. For a detailed understanding of this mechanism, kindly refer to the PoS consensus model of Ethereum.


For the Alpha testnet phase, Opside Chain is set to incorporate EIP-4844. This introduces Data Availability Sampling (DAS), a tool used to ensure that transaction data from ZK-Rollup is available after execution, without overburdening any single node. In practice, each validator will randomly pull transaction data from the blob to verify its presence. The same method can also ensure that all data from block producers is accessible to secure light clients. In line with the Proposer-Builder Separation (PBS) principle, only block builders are required to process the entire block, while other validators will employ data availability sampling for validation.


Please note, Opside Chain may vary on specific parameters; the latest values can be accessed in the code repository.


Broadly speaking, staking encourages individual participation in network protection, thus fostering decentralization. Validator nodes can be run on regular laptop computers. Some delegation staking pools even permit staking activities for users who do not hold a sufficient quantity of IDE tokens.


PoW rewards

Based on the ZK-Rollup launchpad provided by Opside, developers can choose to have their own ZK-Rollup on a base chain. To support the massive hardware resources required by numerous ZK-Rollups, Opside offers a unified ZKP computation market, encouraging miners (or provers) to generate ZKP for these ZK-Rollups. This is the ZK-PoW mechanism of Opside.


Single Rollup Sequence Reward Allocation

ZK-PoW is a multi-chain protocol, meaning that PoW rewards will be distributed across various base chains including Ethereum, Opside Chain, BNB Chain, and Polygon PoS. The number of PoW rewards for each base chain depends on the number of registered Rollup slots, ZKP workload, etc.


For each base chain, within a block, each Rollup can only submit one sequence (which can include multiple blocks of the Rollup). Each sequence will equally share the PoW rewards of the current block. This means, for example, if there are four Rollups submitting sequences within a block on the base chain, the PoW rewards will be divided into four parts, with each sequence receiving one-fourth of the block's PoW rewards. Of course, some blocks might not have any Rollup submitting a sequence, so the actual inflation of PoW may be lower than expected.


In the future, each sequence will have workload estimates based on the corresponding ZK-Rollup type, the number of Rollup transactions, gas usage, etc., to price different sequences differently.


Prover's Staking and Penalties

To prevent malicious behavior related to provers, provers are required to register in a specific system contract and stake tokens. Provers are free to participate in the PoW mining of one or more Rollups. Provers need to stake a certain amount of IDE in the system contract for each Rollup they wish to participate in. If the current stake is below the threshold, they are not allowed to submit ZKP for that Rollup. The rewards earned by provers for submitting ZKP will be distributed based on the proportion of stakes, thereby preventing malicious behavior of provers submitting ZKP multiple times.


Provers will be penalized differently for the following actions:

  • If a prover submits an incorrect hash.
  • If no ZKP passes verification, then all provers who have submitted a hash will be penalized. The confiscated Opside tokens will be burned.

For more details and considerations on the two-step submission mechanism for ZKP, please refer to the official documentation. The specific figures for prover stakes and penalties may change in the future.


Developers Leasing Rollup Slots

On each base chain, Opside will deploy the ZK-PoW protocol. Developers can register a Rollup slot with a single click through the ZK-Rollup launchpad, thereby creating their own ZK-Rollup. All hardware resources for this ZK-Rollup are provided by the decentralized Opside network. Developers need to pay for the rental of the Rollup slot, and this portion of the rent will be directly burned.


In addition to a fixed amount of rent, developers can also provide additional ZKP subsidies for their ZK-Rollup to encourage miners to provide computational power.

The specific rules and parameters for rent and subsidies can be found in the official documentation or the code repository.


Governance and Development

The functions and performance of the Opside network will continue to evolve over time. Here are a few examples of higher priorities:


  • Adjust the reward distribution ratio of PoS and PoW dynamically based on the supply and demand relationship of ZKP computational power in the entire network.
  • Validator's data sharding and data availability sampling will provide more abundant storage space for the entire Rollup Layer, accommodating a more ZK-Rollup ecosystem.
  • Separation of the Rollup proposer and builder allows the Rollup layer to use Opside chain's validator as the block proposer, inheriting decentralization from the previous layer.
  • The optimization of miners' staking and slashing mechanisms encourage miners to provide continuous and stable ZKP computational power.
  • Application developers subsidize the ZKP generation of their Rollups to incentivize miners to provide computational power.
  • Workload estimates based on ZK-Rollup type, number of Rollup transactions, gas usage, etc., to establish a personalized pricing mechanism for Rollup batches. These improvements will significantly enhance the utility of the Opside network, thereby promoting the long-term development and prosperity of ZK-Rollup as a Service.


After the launch of the Opside mainnet, an Opside DAO will be established, which includes a reasonable process and mechanism to jointly determine the future of the network. All updates to the parameters and mechanisms of the Opside mainnet will be determined through the Opside DAO. It is important to emphasize that Opside is a co-constructed economy and evolves over time.


Future improvements will be detailed in DAO proposals, explaining how these plans benefit the long-term interests of the Opside economy and each participant category. As the network develops, it is crucial to build an economy that can operate independently and robustly without the need for a large number of tools and subsidies.