ECP Funding Operations Guide

Introduction

ECP (Edge Computing Provider) is a crucial component in the Swan Chain ecosystem and is responsible for executing Zero-Knowledge (ZK) computation tasks. The Sequencer is an optimization component aggregating proofs submitted by multiple ECPs, processing them in batches to reduce gas fees and improve overall efficiency.

Account Overview

  • CP Account (Computing Provider Account): An independent on-chain contract account for CP operations and fund management. FCP and ECP have the same account structure.

    • Owner Address: Hold the highest authority to manage the CP account.

    • Beneficiary Address: Receives rewards for ZK tasks.

    • Worker Address: Used for submitting proofs.

  • Collateral Account: ECP's collateral account in the collateral contract (SwanC).

    • Escrow Account: A account for storing ECP's collateral in collateral contarct, ensuring that ECP can receive ZK tasks.

  • Sequencer Account: ECP's account in the sequencer contract, used to pay for gas fees required when submitting ZK proofs.

Table of Content:

1. Initial Setup

1.1 Obtaining ETH for Gas Fees

ETH is required for transaction gas fees. Follow these steps:

  1. Visit Swan Chain's official bridge website: https://bridge.swanchain.io

  2. Cross-chain your ETH to Swan Chain to obtain ETH

  3. Prepare sufficient ETH to account for potential fluctuations in network gas fees

1.2 Obtaining SWAN for Collateral

ECP requires SWAN as collateral. You can purchase SWAN from centralized exchanges (CEXs).

SWAN is currently listed on Gate.io, MEXC, and LBank.

Contract Address: 0xBb4eC1b56cB624863298740Fd264ef2f910d5564

1.3 Collateral Requirements

  • Collateral amounts dynamically adjust based on network computing power.

  • Monitor the Swan dashboard for computing units and base collateral trends(upcoming feature)

  • Maintain sufficient collateral to ensure continuous task eligibility

2. Account Setup

Depositing SWANU to the Collateral Account: Use the following command:

3.1 Enabling Sequencer Functionality

In the ECP configuration file, set EnableSequencer = true and autoChainProof = true

When autoChainProof is true, ECP will prioritize submitting proofs via the sequencer. If the sequencer lacks sufficient gas, it will automatically submit proofs on-chain. If set to false, ECP won't submit tasks when the sequencer lacks gas.

Note: ECPs can submit proofs in two ways:

  • Directly to Swan Chain as a contract (higher gas consumption per transaction)

  • To the zk-sequencer for batch aggregation (lower gas consumption, recommended)

3.2 Funding the Sequencer Account

When using the sequencer, pre-fund the CP's sequencer account with ETH on Swan Chain. Currently, the gas is decided by the Dynamic Pricing Strategy. For more detailed information, see here.

Note: The sequencer periodically processes tasks and deducts from the sequencer account. If the balance is insufficient during settlement, it may become negative. ECPs need to refund to receive new tasks.

4. Task Execution and Rewards

4.1 Reward Distribution

Rewards are distributed during the next settlement cycle after 24 hours following the CP UBI-0 event rules, typically within 48 hours of task proof submission, to the beneficiary account.

Read Computing Provider Income to learn more.

4.2 Viewing UBI tasks

Check the transaction list of the beneficiary account on the blockchain explorer: https://swanscan.io.

Alternatively, you can use the CP command to view UBI tasks:

The result will look like this:

4.3 Slash Mechanism

To maintain network performance and accountability, CPs are subject to a precise slashing mechanism that penalizes inefficient or unreliable computing services. For each failed task, CPs face graduated penalties:

  • Edge Computing Providers (ECP) lose 0.025% of their current full collateral amount per failed task (approximately 0.88 SWAN for a 3080 GPU), with around 48 tasks processed daily.

If a CP's collateral amount falls below the required threshold, they become ineligible to receive Universal Basic Income (UBI) tasks. To mitigate the risk of unexpected task exclusion, CPs are advised to maintain a buffer in their collateral amount.

More details about Slash Collateral, check here: https://docs.swanchain.io/core-concepts/token/computing-provider-collateral#slashing-mechanism

5. Exit Procedure

5.1 Stop Receiving New Tasks

5.2 Data Backup

Backup the CP_PATH directory (default: ~/.swan/computing)

5.3 Withdrawal Process

a) Withdraw from collateral account:

b) Withdraw from sequencer account:

c) Withdraw from escrow account:

  • Initiate withdrawal request:

  • Confirm withdrawal after 7 days:

Note: Escrow account balance may fluctuate due to periodic settlements. It's advisable to wait 24 hours after changing taskTypes before requesting the withdrawal. Confirmation can only be made 7 days after the initial request. Funds will be withdrawn to the CP's ownerAddress upon confirmation.

Last updated