๐ Transaction Model Overview
The TRON transaction model defines how data is structured, signed, transmitted, and confirmed on the network. TRON uses an account-based model where each transaction is a state transition signed by the sender's private key. Transactions are broadcast to the network, validated by Super Representatives (SRs), and included in blocks.
TRON transactions are atomic and deterministic. A transaction either fully executes or fails, and its result is cryptographically verifiable via the transaction ID.
๐ Transaction Structure
A TRON transaction consists of two main parts: raw data and signature. The raw data contains the contract call, parameters, and metadata.
| Field | Type | Description |
|---|---|---|
| raw_data | Object | Contains the transaction payload (contract, parameters, expiration, etc.) |
| signature | Array of bytes | ECDSA signatures (secp256k1) from the sender's private key |
| txID | String | Transaction hash (SHA3-256 of raw_data) |
Raw Data Fields:
- contract โ The contract type (TransferContract, TriggerSmartContract, etc.) and its parameters.
- expiration โ Timestamp (in milliseconds) after which the transaction expires.
- ref_block_bytes โ Reference block ID (prevents replay attacks).
- ref_block_hash โ Short hash of the reference block.
- timestamp โ Transaction creation timestamp.
- fee_limit โ Maximum TRX that can be burned (for smart contract transactions).
A simple TRX transfer uses TransferContract with fields: owner_address, to_address, and amount (in sun).
๐งฉ Transaction Types
TRON supports several transaction types, each mapped to a specific contract type in the raw data.
Send TRX from one account to another. Uses TransferContract.
Execute a smart contract function (e.g., USDT transfer). Uses TriggerSmartContract.
Deploy new smart contract bytecode. Uses CreateSmartContract.
Vote for Super Representatives or stake TRX. Uses VoteWitnessContract and FreezeBalanceContract.
A USDT TRC20 transfer is a TriggerSmartContract transaction that calls the transfer(address,uint256) method on the USDT contract. It consumes Energy and Bandwidth.
๐ Transaction Lifecycle
A TRON transaction goes through several stages from creation to final confirmation.
- Creation: The transaction is built with the appropriate contract and parameters.
- Signing: The sender signs the raw data with their private key (ECDSA).
- Broadcast: The signed transaction is sent to a TRON node via gRPC or HTTP API.
- Mempool: The transaction enters the pending pool, awaiting block inclusion.
- Block Inclusion: A Super Representative picks the transaction and includes it in a block (every ~3 seconds).
- Confirmation: After 1โ19 blocks, the transaction is considered final (irreversible).
TRON achieves finality in ~3 seconds (1 block) for most use cases. Exchanges often wait for 1โ3 blocks for additional security.
๐ฐ Fee Model & Resource Consumption
TRON transactions consume Energy and Bandwidth. If you don't have enough resources, the network burns TRX to cover the shortfall.
| Transaction Type | Resource Consumed | Approximate Cost (without resources) |
|---|---|---|
| TRX Transfer | Bandwidth (~350 bytes) | ~0.1โ0.3 TRX |
| USDT TRC20 Transfer | Energy (~65,000) + Bandwidth | ~13โ15 TRX |
| Deploy Contract | Energy (varies) + Bandwidth | ~50+ TRX |
| Smart Contract Call | Energy (contract dependent) | varies |
By holding Energy (from staking or renting), you can reduce USDT TRC20 transfer fees to near-zero. Buy or rent Energy from Tronsell.
๐ Signatures & Verification
TRON uses the secp256k1 elliptic curve for digital signatures. Each transaction must be signed by the sender's private key. The signature is verified by nodes to ensure authenticity and integrity.
- Signing: The raw data is hashed (SHA3-256) and signed with the private key.
- Verification: Nodes recover the public key from the signature and verify it matches the sender's address.
- Multi-signature: TRON supports multi-sig via the permission model (Owner, Active, Witness).
Never expose your private key. Use hardware wallets or secure environments for signing. Tronsell never requires your private key.
๐ Querying Transactions
You can view any TRON transaction using a blockchain explorer like TronScan. Each transaction has a unique txID (transaction hash) that can be searched.
- Transaction Details: Status (success/fail), block height, timestamp, sender/receiver, amount, fee, and resource consumption.
- Contract Calls: For smart contract transactions, you can see the method called and the parameters.
- Event Logs: Smart contract events (e.g., Transfer events) are logged and searchable.
Search 0x1234...abcd on TronScan to see full transaction details, including Energy and Bandwidth consumed.