DYDX Token Migration
Home →dYdX v3 Docs →How to Bridge Guide →dYdX Unlimited Docs →Trade →
  • START HERE
    • 🤝Introduction
    • 📄Legal Disclaimers
    • ❕Cessation of Support for the wethDYDX Smart Contract
  • Migration of DYDX from Ethereum to dYdX Chain
    • 🧱Migration & Bridge Overview
      • How to Bridge Guide
    • 📏wethDYDX and wethDYDX Smart Contract
    • 🏛️GovernanceStrategyV2 Smart Contract
    • 🌉TreasuryBridge Smart Contract
    • 👓Open-Source Bridge User Interface
    • 🪙Token Comparison
  • DYDX (dYdX Chain)
    • ⚙️Introduction
    • 🌉x/bridge module
    • 💾Bridge Daemon
  • EXTERNAL LINKS
    • wethDYDX Bridge Stats
    • Bridge ethDYDX to DYDX
Powered by GitBook
On this page

Was this helpful?

  1. DYDX (dYdX Chain)

Introduction

An overview of DYDX (dYdX Chain)

PreviousToken ComparisonNextx/bridge module

Last updated 1 year ago

Was this helpful?

After an ethDYDX holder interacts with the wethDYDX Smart Contract, dYdX Chain validators can read and ingest the information from the contract. Once Step 1 is complete and ethDYDX is permanently locked in the wethDYDX Smart Contract, validators can distribute the corresponding amount of DYDX (1-1) to users on the dYdX Chain.

How dYdX Chain Validators Credit User Accounts on dYdX Chain

Validator's Reading of the Logs

dYdX Chain validators must track Ethereum blockchain events by querying an Ethereum node through RPC calls. They should process only finalized blocks. Validators will specify the Ethereum RPC endpoint in the start command, with the option to store the URL in a configuration file. The node can be self-run or a hosted node from Alchemy or Infura, but for decentralization, no more than 1/3 of the stake weight should rely on any one centralized service.

Adding the Information to State

There would be a new injectable transaction that dYdX Chain validators can add in their blocks that mints tokens to the dYdX Chain as long as there is a corresponding event on Ethereum. dYdX Chain validators should only validate blocks with valid transactions (i.e., if they have also seen this event finalized on the Ethereum blockchain).

Each transaction should match (then increment) the eventId which is kept in dYdX Chain state so that no events are skipped (without manual intervention) and only one integer is needed to track state for this module (limiting the amount of state needed for the module). The eventId should be set to some non-zero number at genesis to prevent replaying the events that were already added at genesis.

⚙️