Skip to content

From Ethereum

TRON and Ethereum share vocabulary and, to a large extent, tooling — but carry different assumptions. This guide maps every major Ethereum concept to its TRON equivalent and flags where the analogy breaks down.

Ethereum and TRON addresses represent the same underlying data (a 20-byte public key hash) but encode it differently.

PropertyEthereumTRON
Prefix0x + 40 hex charsT + 33 Base58Check chars
Example0xAbCd...1234TJYea...VPCX
Length42 characters34 characters
EncodingHex with EIP-55 checksumBase58Check with prefix byte 0x41
Case-sensitive?Yes (checksum casing)No

Every Ethereum address has a deterministic TRON equivalent and vice versa. You derive your TRON address from the same private key — TronLink does this automatically on import.

EthereumTRONNotes
MetaMaskTronLinkBoth are browser extension + mobile wallets. TronLink injects window.tronWeb instead of window.ethereum.
LedgerLedgerLedger supports TRX natively via Ledger Live.
Rainbow, Coinbase WalletTronLink MobileNo direct equivalent for all Ethereum wallets.
WalletConnectWalletConnect (supported)TRON support added January 2026. Connects WalletConnect-enabled wallets to TRON DApps.
Gnosis SafeJustSafe (limited)Multi-sig on TRON is less mature.
EthereumTRONDifferences
ERC-20TRC-20Functionally identical. Same method signatures (transfer, approve, allowance).
ERC-721TRC-721Functionally identical. Same token ID model.
ERC-1155TRC-1155Functionally identical. Multi-token contracts.
ERC-4626No direct equivalentVault standard not widely adopted on TRON.
WETHWTRXWrapped TRX (WTRX) serves the same role as WETH.

This is the most significant conceptual difference between Ethereum and TRON.

ConceptEthereumTRON
Fee currencyETH (always)TRX (only if staked resources are insufficient)
Computation pricingGas (paid per unit at market rate)Energy (from staked TRX or burned TRX)
Data pricingGas (same unit)Bandwidth (from staked TRX or burned TRX)
Fee variabilityHigh — set by market via base fee + tipLow — burn rate set by governance
Can fees be zero?NoYes — with sufficient staked Energy and Bandwidth
Prepaid resourcesNoYes — stake TRX once, use Energy/Bandwidth continuously

Practical implication: Ethereum users always pay gas in ETH on every transaction. TRON users who stake TRX receive Energy and Bandwidth that regenerates daily, making most transactions effectively free.

Ethereum protocolTRON equivalentNotes
Uniswap V2/V3SunSwap V2/V3Nearly identical AMM model. SunSwap V3 uses concentrated liquidity like Uniswap V3.
Aave / CompoundJustLendSame borrow/supply model with health factors and liquidation.
MakerDAO / DAIJustStable / USDJ (Deprecated)USDJ was TRX-collateralized (deprecated 2025), JST is the governance token (analogous to MKR).
OpenSeaaiNFTTRON’s primary NFT marketplace. Less volume than OpenSea.
dYdX / GMXSunXPerpetual futures on TRON. Up to 50x leverage.
CurveLimitedNo direct equivalent with Curve’s stableswap model. SunSwap V3 covers some use cases.
LidoNo direct equivalentLiquid staking protocols are less developed on TRON.

The TRON Virtual Machine (TVM) is derived from the EVM and executes Solidity contracts compiled with solc. Most contracts port directly, but several behaviors differ and will produce silent bugs if overlooked.

timestamp_diff.sol
// Task: Handle block.timestamp in TVM Solidity.
// Note: block.timestamp returns seconds in TVM, mirroring EVM.
uint256 deadline = block.timestamp + 3600; // 1 hour from now

Impact: While block.timestamp inside the TVM behaves exactly like Ethereum (returning seconds), the TRON Full Node API and block headers return timestamps in milliseconds. Any application or backend interacting with the TRON API must divide those timestamps by 1,000 before sending them to your smart contracts for comparison.

Similar to Ethereum’s EIP-6780, the selfdestruct opcode behavior has been modified on TRON. Calling it will transfer the contract’s assets to the target address, but it will not delete the contract (unless it is called in the same transaction the contract was created). It also incurs a 5,000 Energy cost. Re-evaluate your architecture if you rely on contract deletion.

Support for TSTORE and TLOAD (EIP-1153 for transient storage) as well as MCOPY (EIP-5656 for efficient memory copying) was added in the GreatVoyage-v4.8.0 (Kant) upgrade (June 2025). This ensures TVM remains aligned with Ethereum’s Cancun/Dencun features.

TRON addresses are 21 bytes internally (1-byte prefix 0x41 + 20-byte hash). In Solidity on TRON, address type is still 20 bytes (the 0x41 prefix is handled at the protocol layer). The address(this) in a contract returns the contract’s Ethereum-style 20-byte address, not the Base58Check T-prefixed format shown to users.

owner_mapping.sol
// Task: Capture the 20-byte account address from msg.sender.
// Note: TVM Solidity uses 20-byte address types, identical to EVM.
address owner = msg.sender;

When a function is payable, msg.value represents the TRX amount sent — but in SUN (the smallest unit), not in whole TRX. 1 TRX = 1,000,000 SUN. This is identical to Ethereum’s relationship between ETH and wei (1 ETH = 10^18 wei), just a different scale.

CREATE2 (deterministic contract addresses) is supported on TRON. The salt-based deployment pattern works identically to Ethereum.

Most Ethereum precompiles are available on TRON. ecrecover, SHA-256, RIPEMD-160, and identity are supported. Some newer Ethereum precompiles (e.g., KZG point evaluation from EIP-4844) are not present on TRON.

The compiled bytecode size is constrained by TRON’s maximum transaction size, which is 500KB (vs 24KB limit on Ethereum). TRON’s larger limit significantly reduces the need for contract splitting patterns like the Diamond Standard.

Ethereum toolTRON equivalentNotes
solcsolc (same)Use the same Solidity compiler. TronBox specifies the version in config.
Hardhat / FoundryTronBoxSee the Tool Equivalents guide.
Ethers.jstronwebDifferent API surface but same concepts.
window.ethereumwindow.tronWebDApp browser injection point.
EIP-1559 (gas)Not applicableTRON does not use the EIP-1559 fee market.
PitfallImpactFix
API timestamps in millisecondsWrong expiry math when comparing on-chain and off-chain dataDivide API timestamps by 1,000 before passing to contract
selfdestruct callsContract does not delete (EIP-6780)Re-evaluate architecture if relying on contract deletion
Sending to wrong networkPermanent lossAlways verify network before withdrawal
Unlimited ERC-20 approvalsFull balance exposureSame risk exists on TRON — approve minimum needed
Assuming EIP-1559 gasBroken fee estimationUse Energy burn rate, not gas price

For a side-by-side concept table covering Solana and Move chains as well, see Concept Mapping. For TVM smart contract specifics, see the Developers section.