Bỏ qua để đến nội dung

Từ Ethereum

TRON và Ethereum có chung thuật ngữ và phần lớn là công cụ — nhưng mang những giả định khác nhau. Hướng dẫn này ánh xạ từng khái niệm chính của Ethereum sang khái niệm tương đương trên TRON và đánh dấu những điểm khác biệt.

Các địa chỉ Ethereum và TRON đại diện cho cùng một dữ liệu cơ bản (băm khóa công khai 20 byte) nhưng mã hóa khác nhau.

Thuộc tínhEthereumTRON
Tiền tố0x + 40 ký tự hexT + 33 ký tự Base58Check
Ví dụ0xAbCd...1234TJYea...VPCX
Độ dài42 ký tự34 ký tự
Mã hóaHex với checksum EIP-55Base58Check với byte tiền tố 0x41
Phân biệt chữ hoa/thường?Có (checksum casing)Không

Mỗi địa chỉ Ethereum đều có một địa chỉ TRON xác định tương đương và ngược lại. Bạn dẫn xuất địa chỉ TRON của mình từ cùng một khóa riêng (private key) — TronLink thực hiện việc này tự động khi nhập (import) khóa.

EthereumTRONGhi chú
MetaMaskTronLinkCả hai đều là tiện ích mở rộng trình duyệt + ví di động. TronLink tiêm window.tronWeb thay vì window.ethereum.
LedgerLedgerLedger hỗ trợ TRX bản địa thông qua Ledger Live.
Rainbow, Coinbase WalletTronLink MobileKhông có khái niệm tương đương trực tiếp cho tất cả ví Ethereum.
WalletConnectWalletConnect (được hỗ trợ)Hỗ trợ TRON được thêm vào tháng 1 năm 2026. Kết nối các ví hỗ trợ WalletConnect tới dApp TRON.
Gnosis SafeJustSafe (hạn chế)Đa chữ ký (Multi-sig) trên TRON chưa được phát triển bằng.
EthereumTRONSự khác biệt
ERC-20TRC-20Về mặt chức năng là giống hệt nhau. Cùng phương thức signatures (transfer, approve, allowance).
ERC-721TRC-721Về mặt chức năng là giống hệt nhau. Cùng mô hình token ID.
ERC-1155TRC-1155Về mặt chức năng là giống hệt nhau. Các hợp đồng đa token.
ERC-4626Không có tương đương trực tiếpVault standard (Tiêu chuẩn kho) chưa được áp dụng rộng rãi trên TRON.
WETHWTRXWrapped TRX (WTRX) phục vụ vai trò tương tự như WETH.

Đây là sự khác biệt về khái niệm đáng kể nhất giữa Ethereum và TRON.

Khái niệmEthereumTRON
Tiền tệ trả phíETH (luôn luôn)TRX (chỉ khi tài nguyên đã Khóa TRX không đủ)
Định giá tính toánGas (được trả trên mỗi đơn vị theo tỷ giá thị trường)Năng lượng (từ việc Khóa TRX hoặc Đốt TRX)
Định giá dữ liệuGas (cùng đơn vị)Băng thông (từ việc Khóa TRX hoặc Đốt TRX)
Sự biến động phíCao — do thị trường quyết định qua phí cơ sở (base fee) + tipThấp — tỷ lệ đốt (burn rate) do quản trị viên quyết định
Phí có thể bằng không?KhôngCó — nếu Khóa TRX đủ Năng lượng và Băng thông
Tài nguyên trả trướcKhôngCó — Khóa TRX một lần, sử dụng Năng lượng/Băng thông liên tục

Tác động thực tế: Người dùng Ethereum luôn trả gas bằng ETH trên mỗi giao dịch. Người dùng TRON khi Khóa TRX sẽ nhận được Năng lượng và Băng thông được tái tạo hàng ngày, giúp hầu hết các giao dịch thực sự miễn phí.

Giao thức EthereumTương đương trên TRONGhi chú
Uniswap V2/V3SunSwap V2/V3Mô hình AMM gần như giống hệt nhau. SunSwap V3 sử dụng thanh khoản tập trung giống Uniswap V3.
Aave / CompoundJustLendCùng mô hình vay/cung cấp với hệ số sức khỏe (health factor) và thanh lý.
MakerDAO / DAIJustStable / USDJ (Ngừng hoạt động)USDJ được thế chấp bằng TRX (ngừng năm 2025), JST là token quản trị (tương tự như MKR).
OpenSeaaiNFTThị trường NFT chính của TRON. Khối lượng giao dịch thấp hơn OpenSea.
dYdX / GMXSunXGiao dịch tương lai vĩnh cửu (Perpetual futures) trên TRON. Đòn bẩy lên tới 50x.
CurveHạn chếKhông có khái niệm tương đương trực tiếp với mô hình stableswap của Curve. SunSwap V3 bao phủ một số trường hợp sử dụng.
LidoKhông có tương đương trực tiếpCác giao thức Liquid staking kém phát triển hơn trên TRON.

TVM vs EVM — Khác biệt cho Nhà phát triển

Phần tiêu đề “TVM vs EVM — Khác biệt cho Nhà phát triển”

TRON Virtual Machine (TVM) được dẫn xuất từ EVM và thực thi các hợp đồng Solidity được biên dịch bằng solc. Hầu hết các hợp đồng đều chuyển trực tiếp, nhưng có một số hoạt vi khác biệt và sẽ tạo ra các lỗi âm thầm nếu bị bỏ qua.

timestamp_diff.sol
// Nhiệm vụ: Xử lý block.timestamp trong TVM Solidity.
// Lưu ý: block.timestamp trả về số giây trong TVM, giống với EVM.
uint256 deadline = block.timestamp + 3600; // 1 giờ kể từ bây giờ

Tác động: Mặc dù block.timestamp bên trong TVM hoạt động giống hệt Ethereum (trả về giây), TRON Full Node API và các tiêu đề khối (block headers) lại trả về timestamp (dấu thời gian) tính bằng mili giây. Bất kỳ ứng dụng hay backend nào tương tác với TRON API đều phải chia các timestamp đó cho 1,000 trước khi gửi chúng đến Hợp đồng thông minh của bạn để so sánh.

Tương tự như EIP-6780 của Ethereum, hoạt vi của opcode selfdestruct đã được sửa đổi trên TRON. Việc gọi nó sẽ chuyển các tài sản của hợp đồng sang địa chỉ đích, nhưng nó sẽ không xóa hợp đồng (trừ khi nó được gọi trong cùng giao dịch mà hợp đồng được tạo). Nó cũng tốn thêm chi phí 5,000 Năng lượng. Hãy đánh giá lại kiến trúc của bạn nếu bạn phụ thuộc vào việc xóa hợp đồng.

Việc hỗ trợ cho TSTORETLOAD (EIP-1153 cho bộ nhớ tạm thời) cũng như MCOPY (EIP-5656 cho việc sao chép bộ nhớ hiệu quả) đã được thêm vào trong bản nâng cấp GreatVoyage-v4.8.0 (Kant) (tháng 6 năm 2025). Điều này đảm bảo TVM vẫn đồng bộ với các tính năng Cancun/Dencun của Ethereum.

Bên trong hệ thống, địa chỉ TRON có kích thước 21 byte (tiền tố 1 byte 0x41 + băm 20 byte). Trong Solidity trên TRON, kiểu address vẫn là 20 byte (tiền tố 0x41 được xử lý ở cấp độ giao thức). Biến address(this) trong hợp đồng trả về địa chỉ kiểu Ethereum (20 byte) của hợp đồng, chứ không phải định dạng T-prefix Base58Check được hiển thị cho người dùng.

owner_mapping.sol
// Nhiệm vụ: Lấy địa chỉ tài khoản 20 byte từ msg.sender.
// Lưu ý: TVM Solidity sử dụng kiểu address 20 byte, giống hệt EVM.
address owner = msg.sender;

Khi một hàm có tính năng payable, msg.value đại diện cho số lượng TRX được gửi — nhưng nó tính bằng SUN (đơn vị nhỏ nhất), chứ không phải TRX nguyên. 1 TRX = 1,000,000 SUN. Điều này giống hệt mối quan hệ giữa ETH và wei của Ethereum (1 ETH = 10^18 wei), chỉ là ở một tỷ lệ khác.

CREATE2 (địa chỉ hợp đồng xác định) được hỗ trợ trên TRON. Phương thức triển khai dựa trên salt (mồi) hoạt động giống hệt Ethereum.

Hầu hết các hợp đồng được biên dịch trước (precompiles) của Ethereum đều có sẵn trên TRON. ecrecover, SHA-256, RIPEMD-160, và identity đều được hỗ trợ. Một số precompile mới hơn của Ethereum (ví dụ: đánh giá điểm KZG từ EIP-4844) không xuất hiện trên TRON.

Kích thước bytecode sau biên dịch bị giới hạn bởi kích thước giao dịch tối đa của TRON là 500KB (so với giới hạn 24KB trên Ethereum). Giới hạn lớn hơn của TRON làm giảm đáng kể nhu cầu cho các mô hình chia tách hợp đồng (contract splitting patterns) như Tiêu chuẩn Kim cương (Diamond Standard).

Công cụ EthereumTương đương trên TRONGhi chú
solcsolc (giống)Sử dụng cùng một trình biên dịch Solidity. TronBox chỉ định phiên bản trong file cấu hình.
Hardhat / FoundryTronBoxXem hướng dẫn Công cụ tương đương.
Ethers.jstronwebBề mặt API khác biệt nhưng có chung khái niệm.
window.ethereumwindow.tronWebĐiểm tiêm (injection point) trên trình duyệt DApp.
EIP-1559 (gas)Không áp dụngTRON không sử dụng thị trường phí EIP-1559.
Cạm bẫy (Pitfall)Tác độngKhắc phục
API timestamp tính bằng mili giâyLỗi tính toán hết hạn khi so sánh dữ liệu on-chain và off-chainChia API timestamp cho 1,000 trước khi truyền (pass) tới hợp đồng
Các lệnh gọi selfdestructHợp đồng không bị xóa (EIP-6780)Hãy đánh giá lại kiến trúc nếu bạn phụ thuộc vào việc xóa hợp đồng
Gửi sai mạng lướiMất mát vĩnh viễnLuôn kiểm tra mạng lưới trước khi rút tiền
Không giới hạn ERC-20 approvalsRủi ro bị mất toàn bộ số dưRủi ro tương tự tồn tại trên TRON — chỉ approve số lượng tối thiểu cần thiết
Giả định về EIP-1559 gasĐánh giá phí sai lệchSử dụng tỷ lệ Đốt Năng lượng, không sử dụng giá gas

Để xem bảng khái niệm sánh đôi cho các chuỗi Solana và Move, hãy xem Ánh xạ khái niệm. Để biết các tính năng đặc thù của Hợp đồng thông minh TVM, hãy xem phần Các nhà phát triển.