如何批量转账 ETH 和 Stoken ?

为了满足社区推广团队的实际需求,我们开发部署了 批量转账 ETH 和 Stoken 合约 。它允许你容易的批量转账 ETH 和 Stoken 在同一个交易内,能明显降低转账费用和操作时间。

本页内容将通过一个实例来示范如何使用这个 批量转账 ETH 和 Stoken 合约

实例

使用一个演示钱包 0xAAAAfBd0C79865902828c34743AdE9c5a0373141 转账 ETH 和 Stokens 到下表中的 10 个地址:

地址 ETH 数量 Stoken 数量
0xe6A12f1E49c01e795c45D0B1097766E9BA6DA54a 0.002 ETH 1,001.000001 Stokens
0x3d061Bf0DdD7a5e5EFde54bE814D3d649B29E10E 0.002 ETH 1,001.000001 Stokens
0xB8700507c6c0FEfEDa0499c1D1d2e44df8bfbaF9 0.002 ETH 1,001.000001 Stokens
0xbf1c5DCebdd5bBcBa618DEbaA8ab5FACc68dcb98 0.002 ETH 1,001.000001 Stokens
0x119A38595f8FA97B4aff85B5545A7e21dF2d5ae1 0.002 ETH 1,001.000001 Stokens
0x8f644a2C437E1A0B547018FCe4286f0F07d0E3D3 0.002 ETH 1,001.000001 Stokens
0xED8Ce5408BBE7B5C5Fa1A0a508a1432f32b7E8f3 0.002 ETH 1,001.000001 Stokens
0xc3aAf9d7A3B88058d0566Ed9E4d195eD75d0814b 0.002 ETH 1,001.000001 Stokens
0xB7f8B8b8eA6B9f2FFE92c859640e8C056DEf0d67 0.002 ETH 1,001.000001 Stokens
0xBF59256fBc1AD66F60663139093FEE609F40cA59 0.002 ETH 1,001.000001 Stokens

在普通条件下,需要操作交易 20 次。而在合约的帮助下,20 笔交易可以在一次操作中全部完成。

工具准备

计划 A

logo_chrome Google Chrome (Browser) + logo_metamask MetaMask (extension)

计划 B

logo_firefox FireFox (Browser) + logo_metamask MetaMask (extension)

这里有一个指导: 以太坊钱包: PC应用 MetaMask

在合约的帮助下批量转账

1. 批准授权

准许授权 批量转账 ETH 和 Stoken 合约 在您的钱包地址支出 Stoken 。

代码规则:出于安全因原因, 只有您 而且 使用自己的钱包 才可以调用合约转账 ETH 和 Stoken。

根据示例表格中的数据,一共有 1,001.000001 x10 = 10,010.00001 Stokens 将批量转账至 10 个不同的地址。这意味着您的 Stoken 余额需要大于这个数字,然后执行授权。

metamask_enough_stoken.gif

使用以太坊浏览器 etherscan.io - Write ContractStoken Main Contract (Deprecated in Aug 2019) 交互,合约地址为: 0x82070415FEe803f94Ce5617Be1878503e58F0a6a

  1. 复制粘贴这个链接地址并访问: https://etherscan.io/address/0x82070415fee803f94ce5617be1878503e58f0a6a#writeContract
  2. 连接 MetaMask 并确认。
  3. 找到第一项功能 1. approve
  4. spender 栏填入 批量转账 ETH 和 Stoken 合约 地址 0xf5ed657f9441672788A4935F279956745edf461B 然后再输入 Stoken 的数值(含 6 个小数位),本例中 10010.000010 Stoken 即是 10010000010
  5. 写入合约,执行批准授权,确认授权交易。
  6. 一个 View your transaction 显示出来,点击它可以查看交易状态,当显示为 Success 时,授权完成。

您已经成功授权 批量转账 ETH 和 Stoken 合约 允许调动 10010.000010 Stoken ,然后执行合约功能进行批量转账。

metamask_stoken_approve.gif

如果您想手工验证转账授权,读合约,通过 13. allowance 您可以验证它刚刚好就是你想要的结果。

2. 批量转账

批量转账 ETH 和 Stoken 到 10 个不同的地址,每个地址 0.002 ETH1,001.000001 Stoken

请确认您的钱包内 ETH 余额大于 0.002 x10 = 0.02 ETH 并且已经在前一步执行过 10010.000010 Stokens 的转账授权。

  1. 复制粘贴这个链接地址并访问: https://etherscan.io/address/0xf5ed657f9441672788a4935f279956745edf461b#writeContract
  2. 连接 MetaMask 并确认。
  3. 找到第一个功能 1. batchTransfer
  4. batchTransfer 栏填入 ETH 总数,单位就是 ETH ,本例中它是 0.002 x10 = 0.02 ETH ,所以,填入 0.01
  5. 第二栏 accounts 逐个填入地址,便用英文逗号 , 分隔,在最尾一个后边不再分隔加逗号。
  6. 第三栏 etherValue 以 wei 为单位填入 ETH 的数值( 1 wei = 0.000000000000000001 ETH ),所以,0.002 ETH 在这里填入 2000000000000000
  7. 最后一栏 stokenValue 统一填入单个地址转账的 Stoken 的数量值,最后 6 位是小数位,所以 1001.000001 Stoken 就填入 1001000001
  8. 写入合约,确认授权交易。
  9. 一个 View your transaction 显示出来,点击它可以查看交易状态,当显示为 Success 时,授权完成。
metamask_batch_transfer.gif

一共有 10 笔 ETH 转账和 10 笔 Stoken 转账一次性完成。不论是转账矿工费用还是操作时间都大幅减少。

这就是全部了,总共只有 2 步:

  • 授权交易
  • 批量转账