Data Consistency Based on Match
Last updated
Last updated
Match is a well-known open-source blockchain platform, and it implements a new consensus algorithm to optimize the POS consensus. The architecture of this part is as follows:
Zero-knowledge proof
Zero-knowledge proof is a very important feature of the Match public chain and also very important to INTO system. Zero-knowledge proof of Match is a low-cost and trustable expansion protocol based on ZK Rollup architecture, which is used for scalable low-cost payment on public chains like Ethereum. The security of user assets is mainly guaranteed through zero-knowledge proof and data availability. All funds are held by smart contracts on the mainnet, while computing and storage are carried out outside the main chain. In order to improve efficiency, it is not necessary to validate each transaction separately but to "aggregate" the transactions into a single project (Rollup block), and then validate them while approving all transactions.
The main architecture of Matchs zero-knowledge proof system is divided into on-chain and off-chain, namely L1 and L2; The core of L1 is Match's smart contract, which is mainly responsible for depositing, withdrawing, and verifying transactions, that is, maintaining the final status of accounts on the main chain. L2 is divided into L1 interaction (Watcher, Sender), L2 state maintenance (Mempool, Block Proposer, State Keeper, Block Commuter), and zero-knowledge proof system.
Workflow of zero-knowledge proof:
1.The user signs the transaction and submits it to the verifier;
2.It is submitted to the verifier;
3.The verifier aggregates thousands of transactions into one block and submits encrypted promises (root hashes) for the new state to the smart contract on the main network, as well as encrypted proof that the new state is indeed the result of the new state. Some correct transactions are applied to the old state;
4.In addition to proof, the status (referring to a small amount of data for each transaction) is posted on the main chain network at a cheap price, allowing anyone to rebuild the status at any time;
5.Proof and status are verified by smart contracts to verify the validity of all transactions contained in the block and the availability of block data;
During the transfer process, the State Keeper notifies the Block Committee to collect the information needed to generate the zero-knowledge proof, calls the Plink Providing System to generate the zero-knowledge proof, uses the Sender to submit transaction data such as deposits and transfers, and submits the corresponding zero-knowledge proof to L1 for smart contract verification; After waiting for L1 transaction confirmation, the Watcher will notify L2 to update the transaction status to final confirmation.