除了这个文字教程,你也可以点击这个链接观看 EOS Nation 做的 Youtube 视频教程。
操作前准备:
EOS 网络的任何一个账号都可以发起、执行针对一个或多个账号的一个或多个操作的提案。我们这个教程主要针对:由某一个账号发起一个向另一个账号转账的提案。其他类型的提案原理类似,打开 bloks.io 区块链浏览器的 MSIG
模式即会进入发起对应操作提案的页面。
本教程案例的应用场景,可以是账号的某个管理员账号发起一项转账申请,然后通过该账号的多个管理账号的确认批准后执行,也可以是某个账号向该账号发起向某一账号转账付款的提案申请。比如商业上的乙方可以向甲方发起付款提案,通过甲方的账号管理员确认批准款项即可被执行发送。
因此,需要发起一个转账提案就必须要拥有一个 EOS 账号,同时还要有一个提案执行的对象,即另一个 EOS 账号,这个账号可以是任何一个 EOS 账号,但通常是设置有多签管理的 EOS 账号。
接下来是在 bloks.io 上发起一个转账提案的流程。
操作流程:
访问区块链浏览器 https://www.bloks.io/
1. 用 EOS 账号的管理者(active)权限登录 bloks.io。如果你使用 Anchor 钱包/验证器,请用电脑或手机自带的浏览器访问,并用 Anchor 钱包验证登录。如果你用的是其他带有内置浏览器的钱包,则在其内置浏览器或其他你的钱包支持的浏览器访问登录。如上图所示的 1 位置,bloks 会显示提醒你用的是 “active” (管理者) 登录的。
2. 在上图中的 2 位置打开多签模式(MULTISIG MODE)。注意,多签模式只在发起提案时使用,因为在该模式下所有操作都会转变为一个发起提案的操作。批准提案和执行提案时,需要关闭多签模式。打开多签模式后,所有的操作将会进入发起对应操作提案的页面。即,可以根据需要,以这种方式发起其他类型的提案。
3. 点击上图中的 3 位置 Wallet
(钱包)标签。
4. 点击上图中 4 位置 Transfer Tokens
(转账)。
5. 在上图中的 5 位置输入收款 EOS 账号。
6. 在上图中的 6 位置输入转账金额。
7. 在上图中的 7 位置可以输入 memo (转账备注)。如果是向你的交易所账号充值,则这个 memo 一般是必填项,其他的转账则可以不填写内容。
8. 点击蓝色的 Transfer
(转账)按钮。因为我们一开始打开了多签模式(MULTISIG MODE),界面将转到下图的 Propose Multisig Transaction
(发起多签转账提案) 界面。
我们教程所要示范的是多签转账 EOS,因此上图中的 Contract
(合约地址)和 action
(操作)都填写默认值,分别为 eosio.token
和 transfer
。如果是转账其他代币,则需要将 Contract
(合约地址)改成对应代币的发币合约,即发行对应代币的 EOS 账号。
1. 在上图中的 1 位置中的 Authorization
(授权方)填写执行提案所针对的账号,也就是提案执行后需要发送款项的账号。一般后面的 Permission
(授权权限)填写 active
(管理者)权限,即一般是让管理者(active)权限批准。假如想让拥有者(owner)权限批准,则在此处填写 owner
,当然后面的填写的 Requested Approvals
也要填写管理拥有者(owner)权限的账号。
2. 在上图中的 2 位置 from
(发送方)也填写和 1 位置相同的账号。
3. 在上图中的 3 位置 to
(收款方)填写收款账号。
4. 在上图中的 4 位置 quantity
(金额) 填写转账金额。
5. 在上图中的 5 位置 memo
(备注)可以不填,也可以根据需要填写。注意,如果收款账号是中心化交易所账号,memo
(备注)一般都需要填写交易所指定的字符串。
6. 在上图中的 6 位置可以编辑提案名称,也可以直接使用默认名称。
7. 点击 7 位置,即 Requested Approvals
右侧的绿色 +
号,添加需要参与审批提案的账号及对应权限的输入框。
8. 在 8 位置,即参与审批提案的账号及对应权限的输入框中填写这些账号和权限。这些账号可以通过 bloks.io 搜索执行提案所申请的转账交易的账号,在账号详情页面中点击 Keys
查看到。
9. 如果执行提案所针对的账号的管理权限中带有 waits
(交易延迟)设置,并且提案需要加上 waits 所对应的权重才能被批准通过,则需要点击 Transaction Setings
右侧的 Show , 然后在上图中的 delay_sec
栏填写该账号所设置的 waits
(交易延迟)的数值。
10. 核对一下以上填写的信息,确认无误后点击页面下方的蓝色 Propose
按钮,签署提交提案。至此,转账提案创建完成。
在创建完成后,你的提案可以在这个链接上找到:https://bloks.io/msigs
当然,这个提案也可以在发起提案的账号的交易记录中找到。
如上图所示,进入提案详情,让相应的管理账号在非多签模式下点击详情中的 Approve
(批准) 签名批准提案。用发起提案账号审批时需要注意模式。在批准提案时注意提案要求的是 active
(管理者)权限还是 owner
(拥有者)权限,需要用正确的权限才能批准提案。
在该提案被足够的权重管理账号批准后,即可点击 Execute
执行提案。任何一个 EOS账号都可以执行一个已经被批准的提案。如果提案设置了交易延迟,则需要在设定的延迟时间之后才能执行提案。
如上图所示,你可以在 bloks.io 页面的右上角看出你使用的是哪一种权限登录的。如果不是可用于批准提案的权限或账号,请在 EOS 钱包中切换到对应的账号再进行审批提案操作。
作者:Dario Cesaro
编辑:Markus Hinrichs; Randall Roland
翻译:Josh Chung
资源与引用: