zkNode
Execute transactions off-chain and generate ZKPs
A zkNode is the software needed to run a zkEVM node. It is responsible for executing transactions off-chain and generating zero-knowledge proofs (ZKPs) to attest to the correctness of these state change computations. The architecture of the zkNode, which is composed of Synchronizer, Sequencers & Aggregators, as well as RPC, is designed to ensure that it can perform these tasks in a trustless and decentralized manner.
Sequencers & Aggregators
In Hyper Chain network, sequencers are responsible for receiving transactions from users on Layer 2, creating a new Layer 2 batch that can be processed off-chain. Then they can propose it to PoC smart contract as a valid Layer 2 transaction, through a cryptographic commitment.
Aggregators are responsible for collecting these cryptographic commitments from Ethereum Layer 1 and generating zero-knowledge proofs (ZKPs) that attest to the correctness of the off-chain state. Afterwards, Aggregators send committed BATCH data to Prover, get ZKPs from Prover, then send ZKPs to Layer 1 zkEVM contract for on-chain verify the proof generated is correct and consistent.
Anyone with the software necessary for running a zkEVM node can be a Sequencer. However, Aggregators need to have a specific hardware, zkProver, for creating the zero-knowledge validity proofs.
Synchronizer
In addition to sequencing and validation, zkNodes in Hyper Chain also facilitates batch (by Sequencer data) and validity proof (data posted by Aggregators) synchronization, called Synchronizers. Once a batch has been added to Layer 1, the Synchronizer retrieves all relevant data from the smart contracts and stores it in a large database, which can then be served to third parties through a JSON-RPC service. While, the generation of corresponding validity proof varies on the hardware performance. The Synchronizer helps to ensure the consistency and accuracy of off-chain state changes with on-chain state, and enables seamless interaction between the Hyper Chain network and external applications.
Remote Procedure Call (RPC)
RPC is a Ethereum compatible JSON RPC interface which allows external applications to interact with Ethereum blockchain, by supporting seamless integration with existing Ethereum tools and services. Through RPC, external applications can send requests to the Ethereum node running on the Hyper Chain network, and receive responses with blockchain data to update the State, or execute transactions then add to the Pool.
Internal Architecture
The internal architecture of zkNode with several parts mentioned above functioning with each other is depicted as Figure 2 below.

Last updated