Skip to content

2D

An L1 that speaks both Ethereum and Tron over the same account state.

2D is a Layer-1 chain with a single base asset (a USD-stable) and two wallet surfaces on the same account state:

  • Ethereum JSON-RPC (eth_*) on / for MetaMask, ethers.js, viem.
  • Tron wallet HTTP API (/wallet/*) for TronLink, TronWeb.

A transfer sent from TronLink is visible to eth_getTransactionByHash moments later, because both APIs read and write the same accounts table. Blocks land with instant finality (no confirmations, no reorgs), and independent verifier nodes replay every one before serving it to wallets.

Tron & Ethereum addresses

Why 2D treats T…, 0x41…, 41…, and 0x… as the same account, and how both encodings stay in sync on the wire.

Read →

Precompiles, no EVM

Custom on-chain logic without a bytecode interpreter. Each “contract” is an Elixir module at a fixed address in the 0x2D00… namespace.

Read →

State roots

A cryptographic fingerprint of all mutable state in every block. Any client can replay transactions and independently verify what the producer wrote.

Read →

Gasless transactions

Every transaction is free. Spam is bounded by a sliding-window throttle that only delays high-frequency senders, never rejects them.

Read →

Security model

The trust boundaries between user, producer, and verifier, and where input validation, replay prevention, and anti-spam plug in.

Read →

Running a verifier

How to deploy a read-only node that replays every block, serves verified state to wallets, and refuses anything the producer got wrong.

Read →