TRX
TRX 是 TRON 网络的原生 Token,用于支付资源成本、质押、治理投票和协议奖励,也是 TRON DeFi 生态中的主要价值单位。
前置阅读
TRX 是 TRON 网络的原生 Token。账户使用 TRX 支付资源成本、质押获取带宽或能量、获得 TRON Power 参与治理投票;协议也以 TRX 发放产块奖励和投票奖励。在 DApp 与 DeFi 场景中,TRX 还是常用的抵押资产、流动性资产和计价单位。
TRX 如何驱动 TRON 网络
TRON 通过资源模型为链上操作计量成本,避免单个账户或合约长期占用网络资源。开发者部署合约、调用合约、转账或提交系统合约交易时,交易都会消耗相应资源。
资源成本主要由两类资源计量:
- 带宽(Bandwidth):计量交易序列化后写入链上的字节大小。
- 能量(Energy):计量 TVM 执行智能合约所需的计算开销。
账户可通过免费带宽、质押资源或资源代理覆盖这部分成本。资源不足时,网络会按当前带宽或能量单价燃烧 TRX 支付资源成本。也就是说,TRX 既是网络原生资产,也是资源成本的结算资产。
质押 TRX
账户质押 TRX 后获得带宽或能量,并同时获得 TRON Power(TP)。带宽和能量用于支付资源成本; TRON Power 只用于为超级代表(SR)候选人投票,不参与交易扣费。
在 Stake 2.0 中,质押生命周期分为三步:
- 质押(Stake):锁定 TRX,选择获取 Bandwidth 或 Energy,并获得等额 TP。
- 解除质押(Unstake):需要取回 TRX 时发起解除质押,资金进入等待期。
- 提取(Withdraw):等待期结束后,将已解除质押的 TRX 提取回可用余额。
完整机制详见 TRON 网络质押。
铸造 TRX
“铸造”指协议根据共识规则发行新的 TRX。普通账户不能自行铸造 TRX;新增 TRX 只来自协议奖励。
每产生一个新区块,协议会发放两类奖励:
- 产块奖励:8 TRX,发给该区块的出块 SR。
- 投票奖励:128 TRX,由前 127 名 SR 按投票权重共享。
这两个数值都是链上参数,可通过超级代表委员会提案调整。查询当前参数值及了解参数变更流程,参见网络参数。
燃烧 TRX
与铸造机制相对应, TRON 也有原生燃烧机制。
当账户发起交易但可用带宽或能量不足时,网络会从账户余额中燃烧 TRX 支付资源成本。部分系统操作也会直接收取固定 TRX 费用,这些费用同样会被协议燃烧。被燃烧的 TRX 会从流通供应中移除;当燃烧量大于新增奖励时,TRX 净供应量会下降。
面值
TRX 的最小单位是 sun。智能合约和节点 API 通常使用 sun 表示金额。
| 单位 | 换算关系 | 适用场景 |
|---|---|---|
| TRX | 1 TRX | 面向用户前端展示的金额 |
| sun | 1 TRX = 1,000,000 sun | 智能合约内部逻辑、API 接口传参 |
区分 sun 与 SUN
sun:代表 TRX 的最小计价单位(全部小写)。SUN:代表 SUN.io 平台发行的 TRC-20 治理 Token(全部大写)。编写接口参数、合约代码或产品文案时,需要严格区分大小写。
转账 TRX
TRX 转账对应 TransferContract 系统合约。客户端先构建未签名交易,使用发送方私钥签名,再广播到网络。
使用 HTTP API
调用全节点 HTTP 接口 wallet/createtransaction 构建一笔未签名的 TRX 转账交易:
BASE_URL=https://api.shasta.trongrid.io # 示例:Shasta 测试网节点地址
curl -X POST ${BASE_URL}/wallet/createtransaction -d '{
"to_address": "TVDGpn4hCSzJ5nkHPLetk8KQBtwaTppnkr",
"owner_address": "TM2TmqauSEiRf16CyFgzHV2BVxBejY9iyR",
"amount": 10000000, // 金额为 10,000,000 sun (即 10 TRX)
"visible": true
}'接口返回未签名交易后,在本地用发送方私钥签名,再调用广播接口完成转账。
使用 TronWeb SDK
const privateKey = "...";
const fromAddress = "TM2TmqauSEiRf16CyFgzHV2BVxBejY9iyR";
const toAddress = "TVDGpn4hCSzJ5nkHPLetk8KQBtwaTppnkr";
const amount = 10000000; // 金额以 sun 计(10 TRX)
// 1. 构建未签名的 TRX 转账交易体
const tradeobj = await tronWeb.transactionBuilder.sendTrx(
toAddress,
amount,
fromAddress
);
// 2. 本地私钥签名
const signedtxn = await tronWeb.trx.sign(tradeobj, privateKey);
// 3. 广播交易到网络
const receipt = await tronWeb.trx.sendRawTransaction(signedtxn);
console.log('广播回执:', receipt);查询 TRX 余额
使用 HTTP API
调用全节点 HTTP 接口 wallet/getaccount 获取账户信息。返回的 balance 字段就是账户 TRX 余额,单位为 sun:
BASE_URL=https://api.shasta.trongrid.io
curl -X POST ${BASE_URL}/wallet/getaccount -d '{
"address": "TM2TmqauSEiRf16CyFgzHV2BVxBejY9iyR",
"visible": true
}'使用 TronWeb SDK
const address = "TM2TmqauSEiRf16CyFgzHV2BVxBejY9iyR";
// 获取账户信息,从中提取 balance (单位为 sun)
const account = await tronWeb.trx.getAccount(address);
console.log('账户余额 (sun):', account.balance);相关资源
- 资源模型 — 详细了解带宽、能量与质押计算模型
- TRON 网络质押 — Staking 2.0 质押与投票细节
- 智能合约中的 TRX 转账 — 智能合约中转移 TRX 的安全性与编码规范
- TRC-20 — 基于 TRON 虚拟机(TVM)的可替代 Token 标准
- Token 标准概览 — 了解 TRC-10、TRC-20、TRC-721 等标准差异
Updated 26 days ago