Skip to main content

Overview

This page delves into the internals of the Equito Protocol, exploring its key actors and their roles in enabling cross-chain message exchange.

Actors

The Equito protocol thrives on the collaborative efforts of several actors, each playing a vital role in ensuring secure and efficient cross-chain communication.

  1. Equito Apps: This is your creation, the smart contract that leverages the Equito protocol for inter-blockchain communication. Built upon the EquitoApp abstract contract, your Equito App interacts with Routers to send and receive messages across chains.
  2. Routers: These are specialized smart contracts deployed on each blockchain supported by Equito. They act as the communication hubs, responsible for:
    • Outbound Message Processing: When your Equito App calls the sendMessage function, the Router on your current chain receives the data and its destination information. The Router then prepares the message for cross-chain transfer.
    • Inbound Message Delivery: Routers on the destination chain receive messages from other Routers. They perform necessary validation checks and deliver the messages to the intended receiver contract (your Equito App) on the destination chain.
  3. Verifiers: These smart contracts reside on each blockchain and are responsible for verifying the proofs generated by workers. Routers rely on verifiers to confirm the legitimacy of messages before delivering them to Equito Apps.
  4. Validators: operated by third-party entities, Validator Nodes have the twofold responsibility of securing the Equito Network and validating messages. Validators are selected based on their reputation, performance, and commitment to the network's integrity, and are rewarded for their services.
    • Nodes: Validators run a Substrate-based blockchain, where the Equito Governance lives. Powered by the Equito utility token, $EQI, the governance mechanism enables the community to propose and vote on protocol upgrades.
    • Workers: These are off-chain components that play a critical role, by participating in proving the validity of messages before they are delivered to Routers, performing consensus operations and generating cryptographic proofs.

Message flow

  1. Message dispatch Your Equito App triggers the sendMessage function, specifying the target receiver contract, destination chain selector, and the message payload. The Router on your current chain intercepts the message and prepares it for cross-chain transfer.
  2. Message verification: Workers listen to messages emitted by routers, and perform consensus operations to generate a proof that verifies the message's origin and validity.
  3. Message delivery: The message and the generated proof are submitted to the Router on the destination chain. The Router interacts with the Verifier Contract, which examines the proof to ensure its authenticity and validity.
  4. Message execution: Upon successful verification, the Router on the destination chain invokes the receiveMessage function in your Equito App, executing the logic you've defined for handling the received message.