ZexPorta

The Latin word porta means "gate" or "entrance" and as the name suggest, the ZexPorta is responsible for two critical tasks:

  1. Monitoring Blockchain Deposits Tracking blockchain activity to extract token deposits directed to ZexCora.

  2. Processing Withdrawal Requests Retrieving and processing withdrawal requests from the ZexCora in a secure and efficient manner.

To ensure a decentralized implementation, the ZexPorta module leverages the PyFrost library, a Python implementation of the FROST (Flexible Round-Optimized Schnorr Threshold) protocol, to issue threshold signatures. For further information on PyFrost, please refer to the PyFrost repository wiki.

ZexPorta Components

The ZexPorta module comprises three key components:

  1. Deposit Component

    • Monitors blockchain activity to identify ERC20 token transfer transactions.

    • Filters transactions where the recipient matches a user’s deposit address within the platform.

    • Acts as a data layer to store deposit transaction details.

    • Serves as the Signature Aggregator (SA) for PyFrost, sending deposit data to be verified.

  2. Withdraw Component

    • Retrieves withdrawal requests from the Zex core and stores them in a database for processing.

    • Functions as the Signature Aggregator (SA) for PyFrost, coordinating signature handling.

    • Sends withdrawal requests to validators for data verification and issuing a signature share for execution.

  3. Validator

    • Validators act as nodes within the PyFrost network.

    • Responsible for validating both deposit and withdrawal transactions.

    • Issues partial signatures, which are aggregated and verified by the Zex core and Vault contract before final approval.

Benefits of Validator-Based Validation

  • Decentralization: Validators distribute the responsibility of transaction validation across multiple independent nodes, minimizing the risk of centralization.

  • Security: The use of threshold signatures ensures that no single Validator can compromise the system. A quorum of Validators must collaborate to approve a transaction.

  • Scalability: The Validator architecture can scale with the growth of the Zex ecosystem, ensuring efficient validation even as transaction volume increases.

In the upcoming sections, we provide a detailed breakdown of each component, highlighting their roles and how they contribute to the secure and decentralized operation of Zex.