ZK-Rollup Withdrawals Using Recursive Proofs and Parallel Aggregators
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing ZK-rollups face challenges in ensuring liveliness without trusting decentralized aggregators, require complex leader selection methods, and suffer from increased computational and bandwidth costs due to frequent on-chain data posting.
Innovation Solution
A transaction method for a ZK-rollup network that allows multiple independent trustless aggregators to operate in parallel, reduces on-chain computations and data storage by using recursive ZK-proofs, and optimizes transaction processing through batched transactions with minimal on-chain data posting.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If multiple decentralized aggregators are allowed to operate in parallel, then availability and censorship-resistance are improved, but the system complexity and trust requirements increase
Solution Approach 1:
The system segments the aggregator functionality into independent parallel operators, each capable of processing transactions without requiring coordination with others. This segmentation allows multiple aggregators to operate independently, improving availability and censorship-resistance while maintaining simple individual operations.
Solution Approach 2:
The patent introduces a cryptographic intermediary mechanism where aggregators prove transaction validity through cryptographic proofs rather than direct trust relationships. This intermediary layer of cryptographic verification enables multiple aggregators to operate in parallel without requiring complex inter-aggregator trust arrangements.
2Reliability
If transaction data is posted on-chain for each transaction, then data integrity is ensured, but on-chain data storage and computation costs increase
Solution Approach 1:
The patent extracts detailed transaction data from the on-chain domain, keeping only essential elements (aggregated signatures and Merkle roots) on-chain while storing detailed transaction information off-chain. This extraction maintains data integrity through cryptographic verification while dramatically reducing on-chain data storage requirements.
Solution Approach 2:
The system uses cryptographic copies (Merkle proofs and signatures) to represent transaction data on-chain rather than storing the actual transaction details. These cryptographic copies provide sufficient verification capability while occupying minimal on-chain space, enabling data integrity without proportional data storage costs.
3Reliability
If aggregators must provide updated user states to the next aggregator, then transaction correctness is verified, but the ZK-rollup halts if one aggregator fails and leader selection complexity increases
Solution Approach 1:
The patent segments the state verification process so that each aggregator independently verifies transactions against the previous state without needing to receive or forward state data to subsequent aggregators. This segmentation eliminates the single point of failure and removes the need for leader selection, as any aggregator can process transactions independently.
Solution Approach 2:
Each aggregator performs self-service verification by independently validating transactions against the immutable previous state stored on-chain, rather than relying on other aggregators to provide state data. This self-service approach ensures transaction correctness while maintaining system liveness, as each aggregator is self-sufficient and cannot cause system halts.
Data Source
Figure 1~4
Figure 5(a)~5(b)
Figure 5(c)~5(d)
AI summary
The invention refers to a computer-implemented transaction method for a ZK-rollup network for a blockchain, with transaction rules governed by a ZK-rollup smart contract (3) deployed on the blockchain, and with the ZK-rollup network comprising several user ZK-rollup nodes (4) of which at least one is an aggregator ZK-rollup node (5), comprising the following steps: by means of the ZK-rollup smart contract (3) processing a user transfer by a) receiving an aggregator transfer transaction (51), b) verifying that the aggregator transfer transaction (51) is formally valid, and c) if formally valid computing a history root hash (31) from content of the aggregator transfer transaction (51) and from an immediately preceding history root hash (31'), and storing the computed history root hash (31) in a ZK-rollup contract state (32); and processing a withdrawal of funds to one or more blockchain addresses by a) receiving an aggregator withdrawal transaction from an aggregator ZK-rollup node B (5) of the at least one aggregator ZK-rollup node (5), with the aggregator withdrawal transaction generated at the aggregator ZK-rollup node B (5) and comprising i) the one or more blockchain addresses, ii) a history root hash M (31), iii) a purported total amount received by each of the one or more blockchain addresses at history root hash M (31), iv) one or more recursive ZK-proofs (46) of the correctness of each purported total amount received; b) verifying the aggregator withdrawal transaction, c) if the verifications were successful, i) transferring funds according to the purported total amounts received and according to total amounts already withdrawn.