Home指南API 参考手册
指南API 参考手册社区Discord博客FAQ漏洞赏金公告中心English(英文版)Log In
指南

如何成为超级代表

任何账户都可以申请成为超级代表候选人,参与超级代表竞选,本文将介绍如何成为超级代表并参与区块生产。

1. 创建账户

参与超级代表竞选,首先需要有一个 TRON 网络账户,如果您已经有 TRON 账户了,请直接跳转到步骤 2。

建议使用离线的方式创建账户,比如可以借助各种 SDK 或者wallet-cli等工具,本文中我们将使用wallet-cli命令行钱包工具进行账户地址创建以及发送交易。

创建账户,输入RegisterWallet 命令,然后按照提示输入密码。

wallet> RegisterWallet 
Please input password.
password: 
Please input password again.
password: 
Register a wallet successful, keystore file name is UTC--2024-04-18T07-24-17.307000000Z--TBRmnXKMEVfQ8XeQA2NroC9cGi77TvPbNb.json
wallet> 

账户创建成功,私钥会以 keystore 文件的形式被保存在wallet-cli运行目录的Wallet子文件夹下,本例中创建的 keystore 文件名为:UTC--2024-04-18T07-24-17.307000000Z--TBRmnXKMEVfQ8XeQA2NroC9cGi77TvPbNb.json,文件名前面部分为账户创建时间,后面部分为 Base58 格式的账户地址:TBRmnXKMEVfQ8XeQA2NroC9cGi77TvPbNb

登录wallet-cli,输入login命令,然后按照提示输入创建账户时输入的密码。

wallet> login
Please input your password.
password: 
Login successful !!!
wallet> 

登录后, 我们就可以通过wallet-cli轻松操作该账户并发送交易了。

可以通过 BackupWallet命令查看账户私钥,过程中需要输入密码。切记一定对私钥做好备份,以保护账户安全。

wallet> BackupWallet
Please input your password.
password: 
BackupWallet successful !!
8759279fd54e2e141733742029d9d6a1e5fd7c5f7336bdbf46ddd3748f68a5ef

2. 存入TRX

申请成为超级代表候选人需要支付 9999 TRX 的申请费用,并且由于所有交易都会消耗带宽资源,当账户内的带宽不足时,需要燃烧 TRX 以支付带宽费用。因此,为了保证申请成为超级代表候选人交易,以及后期可能进行的更新账户名称等其它交易的成功执行,建议向账户内存入 10,100 TRX。您可以通过交易所提币,或从其它钱包转入 TRX 到该账户。

3. 申请成为超级代表候选人

wallet-cli中通过CreateWitness命令发送申请成为超级代表候选人的交易,该命令需要一个参数,表示超级代表网址,本例中为www.your-website.com,在操作时请替换为您的网址。

wallet> CreateWitness www.your-website.com
{
	"raw_data":{
		"contract":[
			{
				"parameter":{
					"value":{
						"owner_address":"TBRmnXKMEVfQ8XeQA2NroC9cGi77TvPbNb",
						"url":"www.your-website.com"
					},
					"type_url":"type.googleapis.com/protocol.WitnessCreateContract"
				},
				"type":"WitnessCreateContract"
			}
		],
		"ref_block_bytes":"d140",
		"ref_block_hash":"fe6d51f5debe3a0d",
		"expiration":1713428409000,
		"timestamp":1713428351865
	},
	"raw_data_hex":"0a02d1402208fe6d51f5debe3a0d40a8d5aa82ef315a67080512630a32747970652e676f6f676c65617069732e636f6d2f70726f746f636f6c2e5769746e657373437265617465436f6e7472616374122d0a15410ffe4eb0f39afcc431fdb22d77d2263161ea210612147777772e796f75722d7765622d7369742e636f6d70f996a782ef31"
}
before sign transaction hex string is 0a85010a02d1402208fe6d51f5debe3a0d40a8d5aa82ef315a67080512630a32747970652e676f6f676c65617069732e636f6d2f70726f746f636f6c2e5769746e657373437265617465436f6e7472616374122d0a15410ffe4eb0f39afcc431fdb22d77d2263161ea210612147777772e796f75722d7765622d7369742e636f6d70f996a782ef31
Please confirm and input your permission id, if input y or Y means default 0, other non-numeric characters will cancel transaction.

检查交易内容,确认无误请输入y并回车,然后根据提示输入密码,等待交易执行完成,成功后您将看到CreateWitness successful !!字样。

y
Please choose your key for sign.
Please input your password.
password: 
after sign transaction hex string is 0a85010a02d1402208fe6d51f5debe3a0d40cfc7cd8cef315a67080512630a32747970652e676f6f676c65617069732e636f6d2f70726f746f636f6c2e5769746e657373437265617465436f6e7472616374122d0a15410ffe4eb0f39afcc431fdb22d77d2263161ea210612147777772e796f75722d7765622d7369742e636f6d70f996a782ef311241ec56e62858ccf98ff5138002d6d4f1a3eee0c66948704956e2ef8572a8bde78e1ecc72cfa2541ace61076e4a4d4ac1c560cc5d180a28575231414a0a3ea876a701
txid is e58cbd7f8ef280c3e53c36c43e9ae5ad852af6735e439b37f65f9e0744625789
CreateWitness successful !!
wallet> 

上述交易执行完后,等待大概一分钟,再查询账户是否为超级代表候选人,wallet-cli查询账户信息的命令为getaccount ,参数为查询的超级代表账户地址:

wallet> getaccount TBRmnXKMEVfQ8XeQA2NroC9cGi77TvPbNb
{
    "address": "TBRmnXKMEVfQ8XeQA2NroC9cGi77TvPbNb",
    ......
    "is_witness": true,
    ......
}

is_witness值为true则说明该账户是超级代表候选人,如果返回结果中没有is_witness字段,则说明申请成为超级代表候选人交易未成功上链。

注意:超级代表网址可更改,您可以通过wallet-cliUpdateWitness命令修改网址。

4. (可选)更新佣金比例

佣金比例的默认值为 20,即成为超级代表候选人后,默认超级代表自留总收益的 20%,将总收益的 80% 奖励给其选民,佣金比例是可修改的。

假设您要修改佣金比例为 100,即超级代表自留所有总收益,则在wallet-cli中输入命令updateBrokerage,并同时输入两个参数:超级代表账户地址和佣金比例:

wallet> updateBrokerage TBRmnXKMEVfQ8XeQA2NroC9cGi77TvPbNb 100
{
	"raw_data":{
		"contract":[
			{
				"parameter":{
					"value":{
						"brokerage":100,
						"owner_address":"410ffe4eb0f39afcc431fdb22d77d2263161ea2106"
					},
					"type_url":"type.googleapis.com/protocol.UpdateBrokerageContract"
				},
				"type":"UpdateBrokerageContract"
			}
		],
		"ref_block_bytes":"d850",
		"ref_block_hash":"63c8641e2cf43e43",
		"expiration":1713434061000,
		"timestamp":1713434002484
	},
	"raw_data_hex":"0a02d850220863c8641e2cf43e4340c8d18385ef315a55083112510a34747970652e676f6f676c65617069732e636f6d2f70726f746f636f6c2e55706461746542726f6b6572616765436f6e747261637412190a15410ffe4eb0f39afcc431fdb22d77d2263161ea2106106470b4888085ef31"
}
before sign transaction hex string is 0a730a02d850220863c8641e2cf43e4340c8d18385ef315a55083112510a34747970652e676f6f676c65617069732e636f6d2f70726f746f636f6c2e55706461746542726f6b6572616765436f6e747261637412190a15410ffe4eb0f39afcc431fdb22d77d2263161ea2106106470b4888085ef31
Please confirm and input your permission id, if input y or Y means default 0, other non-numeric characters will cancel transaction.

检查交易内容,确认无误请输入y并回车,然后根据提示输入密码,等待交易执行完成,成功后您将看到UpdateBrokerage successful !!!字样。

y
Please choose your key for sign.
Please input your password.
password: 
after sign transaction hex string is 0a730a02d850220863c8641e2cf43e43409bb8a68fef315a55083112510a34747970652e676f6f676c65617069732e636f6d2f70726f746f636f6c2e55706461746542726f6b6572616765436f6e747261637412190a15410ffe4eb0f39afcc431fdb22d77d2263161ea2106106470b4888085ef3112417b6e186b3ceb00af97d38267ff5b2379dd981eeb7d972745c81a588e6e37b6111dd005f4434943ad255cbf600e0d37a06a2e48996b490c68fd888974a7d90e3b01
txid is 2020feb596fdbda28b3ba3243978aedf39f8aaafe2e2c8917eb1fd8370a74d1b
UpdateBrokerage successful !!!

5. (可选)设置超级代表账户名称

任何账户都可以设置其账户名称,但只可设置一次。为了便于社区宣传与推广,建议超级代表设置账户名称,切记:账户名称只能设置一次

如果您要设置账户名称,请在wallet-cli中输入命令UpdateAccount,并附带参数:账户名称。本例中的账户名称为"SR-Name":

wallet> UpdateAccount SR-Name
{
	"raw_data":{
		"contract":[
			{
				"parameter":{
					"value":{
						"account_name":"SR-Name",
						"owner_address":"TBRmnXKMEVfQ8XeQA2NroC9cGi77TvPbNb"
					},
					"type_url":"type.googleapis.com/protocol.AccountUpdateContract"
				},
				"type":"AccountUpdateContract"
			}
		],
		"ref_block_bytes":"da37",
		"ref_block_hash":"71fd967d003f6932",
		"expiration":1713435582000,
		"timestamp":1713435522526
	},
	"raw_data_hex":"0a02da37220871fd967d003f693240b0bce085ef315a5a080a12560a32747970652e676f6f676c65617069732e636f6d2f70726f746f636f6c2e4163636f756e74557064617465436f6e747261637412200a0753522d4e616d651215410ffe4eb0f39afcc431fdb22d77d2263161ea210670deebdc85ef31"
}
before sign transaction hex string is 0a780a02da37220871fd967d003f693240b0bce085ef315a5a080a12560a32747970652e676f6f676c65617069732e636f6d2f70726f746f636f6c2e4163636f756e74557064617465436f6e747261637412200a0753522d4e616d651215410ffe4eb0f39afcc431fdb22d77d2263161ea210670deebdc85ef31
Please confirm and input your permission id, if input y or Y means default 0, other non-numeric characters will cancel transaction.

检查交易内容,确认无误请输入y并回车,然后根据提示输入密码,等待交易执行完成,成功后您将看到Update Account successful !!!!字样。

y
Please choose your key for sign.
Please input your password.
password: 
after sign transaction hex string is 0a780a02da37220871fd967d003f693240bb9b8390ef315a5a080a12560a32747970652e676f6f676c65617069732e636f6d2f70726f746f636f6c2e4163636f756e74557064617465436f6e747261637412200a0753522d4e616d651215410ffe4eb0f39afcc431fdb22d77d2263161ea210670deebdc85ef3112419fd9833e248e6c814b92179e38de7a0ecaa4cdd221acfdbe4a729c8142d8858a45ceb8dc3cda954188384b68b1a7c603cbfb94ce23982c5812aa563a7a26ee4b00
txid is 57b6c8b53c0a7c61b43030a4cba724e826b9b3b8d1ace60612e13c6861203659
Update Account successful !!!!

设置账户名称后,就可以通过walllet-cli getaccount命令查询到。

6. 运行超级代表节点

超级代表需要运行一个 TRON 节点来参与区块生产,同时也会获得相应的奖励。

节点搭建的流程如下:

  1. 下载最新数据快照
  2. 部署节点 - 请参考节点部署指南

启动节点后,如何检查节点是否同步完成?可以通过接口/wallet/getnowblockwallet/getnodeinfo查询本地节点的最新区块高度,并与在 Tronscan 上查询的结果进行比较,如果一致,则说明本地节点区块同步已完成,状态正常,可以进行交易验证与广播、区块处理及生产。请注意,只有当超级代表候选人账户获得的投票数排在前 27 名,即候选人成为超级代表后,节点才会生产区块。

7. (可选)参与提案投票

TRON 网络的升级与治理需要通过提案的方式来完成,一个提案可以修改一个或多个链上参数。每个超级代表、超级代表合伙人及超级代表候选人都有权利发起提案来修改 TRON 网络参数,但只有超级代表具有对提案的投票权。

发起提案
wallet-cli中输入命令CreateProposal,附带要修改的动态参数号及其值。本例是修改第 70 号参数值为 15。

wallet> CreateProposal 70 15
{
	"raw_data":{
		"contract":[
			{
				"parameter":{
					"value":{
						"owner_address":"TBRmnXKMEVfQ8XeQA2NroC9cGi77TvPbNb",
						"parameters":[
							{
								"value":15,
								"key":70
							}
						]
					},
					"type_url":"type.googleapis.com/protocol.ProposalCreateContract"
				},
				"type":"ProposalCreateContract"
			}
		],
		"ref_block_bytes":"2d3e",
		"ref_block_hash":"a672a46dfaa0c5dc",
		"expiration":1713502020000,
		"timestamp":1713501961789
	},
	"raw_data_hex":"0a022d3e2208a672a46dfaa0c5dc40a0c3b7a5ef315a58081012540a33747970652e676f6f676c65617069732e636f6d2f70726f746f636f6c2e50726f706f73616c437265617465436f6e7472616374121d0a15410ffe4eb0f39afcc431fdb22d77d2263161ea210612040846100f70bdfcb3a5ef31"
}
before sign transaction hex string is 0a760a022d3e2208a672a46dfaa0c5dc40a0c3b7a5ef315a58081012540a33747970652e676f6f676c65617069732e636f6d2f70726f746f636f6c2e50726f706f73616c437265617465436f6e7472616374121d0a15410ffe4eb0f39afcc431fdb22d77d2263161ea210612040846100f70bdfcb3a5ef31
Please confirm and input your permission id, if input y or Y means default 0, other non-numeric characters will cancel transaction.

检查交易内容,确认无误请输入y并回车,然后根据提示输入密码,等待交易执行完成,成功后您将看到CreateProposal successful !!字样。

y
Please choose your key for sign.
Please input your password.
password: 
after sign transaction hex string is 0a760a022d3e2208a672a46dfaa0c5dc40b1acdaafef315a58081012540a33747970652e676f6f676c65617069732e636f6d2f70726f746f636f6c2e50726f706f73616c437265617465436f6e7472616374121d0a15410ffe4eb0f39afcc431fdb22d77d2263161ea210612040846100f70bdfcb3a5ef311241b13d61162cb44bd1a8cc7e2129a93cb7650a39bd679a48d3a7052abef9d9d29736158be610214e242c8059e205bfe50c572c4d8fc1ae37177ddf373f09cf87bf01
txid is 854da5d9d2577894a061a2b3aee46075532d40ac2f047a699887c00bf2d6cbf1
CreateProposal successful !!

超级代表为提案投票
wallet-cli中输入命令ApproveProposal,附带提案ID,及 true,可以通过ListProposals命令查看刚刚创建的提案的 ID,本例中刚才创建的提案 ID 为 19602。

wallet> ApproveProposal 19602 true
{
	"raw_data":{
		"contract":[
			{
				"parameter":{
					"value":{
						"proposal_id":19602,
						"is_add_approval":true,
						"owner_address":"TBRmnXKMEVfQ8XeQA2NroC9cGi77TvPbNb"
					},
					"type_url":"type.googleapis.com/protocol.ProposalApproveContract"
				},
				"type":"ProposalApproveContract"
			}
		],
		"ref_block_bytes":"2e24",
		"ref_block_hash":"158e49f435409805",
		"expiration":1713502734000,
		"timestamp":1713502675384
	},
	"raw_data_hex":"0a022e242208158e49f43540980540b08de3a5ef315a59081112550a34747970652e676f6f676c65617069732e636f6d2f70726f746f636f6c2e50726f706f73616c417070726f7665436f6e7472616374121d0a15410ffe4eb0f39afcc431fdb22d77d2263161ea210610929901180170b8c3dfa5ef31"
}
before sign transaction hex string is 0a770a022e242208158e49f43540980540b08de3a5ef315a59081112550a34747970652e676f6f676c65617069732e636f6d2f70726f746f636f6c2e50726f706f73616c417070726f7665436f6e7472616374121d0a15410ffe4eb0f39afcc431fdb22d77d2263161ea210610929901180170b8c3dfa5ef31
Please confirm and input your permission id, if input y or Y means default 0, other non-numeric characters will cancel transaction.

检查交易内容,确认无误请输入y并回车,然后根据提示输入密码,等待交易执行完成,成功后您将看到ApproveProposal successful !!!字样。

y
Please choose your key for sign.
Please input your password.
password: 
after sign transaction hex string is 0a770a022e242208158e49f435409805408cf385b0ef315a59081112550a34747970652e676f6f676c65617069732e636f6d2f70726f746f636f6c2e50726f706f73616c417070726f7665436f6e7472616374121d0a15410ffe4eb0f39afcc431fdb22d77d2263161ea210610929901180170b8c3dfa5ef3112416653d14145ea0a861cdbb41d38fb5e46023cfa5dde9ce523e87c75ceb86e4dbe6e93b4fe2bb2c32f40812dbea40a551fe490fefd7aeb73d4ec55cbe7a71c924c00
txid is 3c3262aaee16e58bacc9f345a0422e08972a446c5859807e11d9b32f19f02afc
ApproveProposal successful !!!