如何使用AlphaWallet钱包进行测试网的代币转账/冻结/锁仓投放功能验收?
【本文目标】 通过本文实践,可以使用AlphaWallet钱包完成Repsten Test Network的ERC20的代币转账,冻结,锁仓投放等功能的验收测试。
【前置条件】 1) 懂得在REMIX调试SOLIDITY语言,不熟悉的参考文章 《第十课 Solidity语言编辑器REMIX指导大全》 。 2)已发布ERC20的代币,不熟悉的参考 《第七课 技术小白如何在45分钟内发行通证(TOKEN)并上线交易》 3)会发布使用锁仓合约,不熟悉的参考 《第十九课 代币锁仓后逐步释放的ERC20智能合约实践》
【收获】 1)AlphaWallet是支持ERC875的钱包,同时它也完美支持ERC20的功能。了解ERC875请参考 《第十八课 【ERC875】Hiblock黑客马拉松门票从定制到编码实现》 2) imToken只支持主网环境的钱包功能,AlphaWallet能支持Ropsten等各种测试网络,降低智能合约上主网不可篡改的风险。
获取CLB的智能合约代码,在REMIX+MetaMask(Repston测试环境)下发布CLB代币合约。 不会发代币的参考 《第七课 技术小白如何在45分钟内发行通证(TOKEN)并上线交易》 ,此处不做详述。
辉哥发布成功的代币链接: https://ropsten.etherscan.io/tx/0xd84b11e4558c7d40cf6a26b02320e2aefe51caca7942fbd8d6dcf5e89547c38b
辉哥发布使用的账号信息ACCOUNT1: 地址 :0xD1F7922e8b78cBEB182250753ade8379d1E09949 私钥 :FE8514896FE1882D8751AD012E208889889602FB374A249BCF9DA9FD26EF3655
可见其对应的智能合约地址(Contract Address ): 0xe37ffd55b6c135209b6742b7fbe096ae2837fce6
代币信息如下: name = "Colorbay Token"; symbol = "CLB"; decimals = 18; totalSupply = 10亿;
1)下载安装APP 辉哥在官网( https://awallet.io/ )下载APP完成安装。 设置网络为Ropston(test)网络。
2)导入私钥地址到钱包 地址 :0xD1F7922e8b78cBEB182250753ade8379d1E09949 私钥 :FE8514896FE1882D8751AD012E208889889602FB374A249BCF9DA9FD26EF3655
导入成功后就可以看到CLB代币,一共有10个亿。
初始10亿CLB
1) 创建钱包 在AlphaWallet上创建新的钱包 ACCOUNT2 “0xda5c82f12f5c2ab1ef918afefe089c76103f453c ”
2) 转账/查询 切换到ACCOUNT1账号下,转账10000个CLB给ACCOUNT2 转账成功后,等待2分钟,可以看到ACCOUNT2已经有1万个CLB存在了。 交易信息: https://ropsten.etherscan.io/tx/0xebab900d530f2eecbeba197bea0abc928ae00c6b3e77eee42b86e517e941d0ec ACCOUNT2账号余额截图:
使用 https://www.myetherwallet.com/#contracts 进行账户冻结调用。 Contract Address: 0xe37ffd55b6c135209b6742b7fbe096ae2837fce6 ABI / JSON Interface:(REMIX编译环境可获取),代码太长,存放到知识星球了,请加入自取文件:Colorbay.min.ABI。 知识星球对应文章附件还存放了CLB和锁仓智能合约的源码等内容。
在MetaMask的账号停留在ACCOUNT1创建CLB代币账号下,执行ACCOUT1动作:
11.冻结ACCOUNT1
冻结成功后,在AlphaWallet执行转账给ACCOUNT2账号的操作,会返回失败,证明冻结账户功能成功。 https://ropsten.etherscan.io/tx/0x2d85e4523dcbc6d2357fe33d5f9efe903b1ec69feaf25ddcf97f885961d244a5
执行freezeAccount的false选项,把ACCOUNT1解冻结掉。
参考文章 《第十九课 代币锁仓后逐步释放的ERC20智能合约实践》 完成锁仓合约的发布。
锁仓合约编译成功后,在2018/08/14 16:25时在remix执行创建锁仓合约动作。假设该锁仓合约为激励辉哥参与彩贝项目发放的代币期权。 收益账户为"0xda5c82f12f5c2ab1ef918afefe089c76103f453c"; 目标开始时间:2018/08/14 16:35 ; 锁仓冻结操作时间:2分钟; 代币期权周期时间:10分; 支持激励撤销功能;
constructor("0xda5c82f12f5c2ab1ef918afefe089c76103f453c", "1534235700", "120", "600", true)
智能合约记录: https://ropsten.etherscan.io/tx/0x74e3cae0a6872282e396f91899f502e2f85ae54a3ec31d7f53a739383854557a 智能合约的地址: Contract 0xaf9cdde9bbee1b3d26180ce1daeab540df33cf3d
在2018/08/14 16:30,公司老板在AlphaWallet下,从ACCOUNT1账户往锁仓智能合约打20000个CLB。
转账成功的交易记录: https://ropsten.etherscan.io/tx/0x84d6e6f3e4d10607d14fe993bd1afd750db1edc9624261bb781c1799e805fff7
在2018/08/14 16:38时,在ACCOUNT1下老板执行释放期权的函数调用:
release("0xe37ffd55b6c135209b6742b7fbe096ae2837fce6")
执行截图:
15.释放激励
执行成功链接: https://ropsten.etherscan.io/tx/0xe9063edca480ea504028e10583178929024954c828107bd1acb49ec8e0955f6f 查看AlphaWallet 辉哥的账号"0xda5c82f12f5c2ab1ef918afefe089c76103f453c",已收到了6400个CLB代币。
辉哥因为个人原因,需要离开彩贝项目组。老板在ACCOUNT1账号在16:40时执行取消代币期权激励命令函数,把未分配的代币回收到ACCOUNT1账号下。
revoke("0xe37ffd55b6c135209b6742b7fbe096ae2837fce6")
执行截图:
16. 合同解除,返回代币
未分配CLB代币已打回到ACCOUNT1 老板账户下。 交易记录为 https://ropsten.etherscan.io/tx/0x16f4567f96a58b3f94699049e89db5b2b2b3d3d334daffa7e5f7e5ad53dd2d31 , 返回了 9,633.333333333333333334 ERC20 (CLB)。
ACCOUNT1更新
16:42,因为时间差的原因,还需要执行release命令把剩余已授权未释放部分发放给辉哥。
release("0xe37ffd55b6c135209b6742b7fbe096ae2837fce6")
执行成功记录: https://ropsten.etherscan.io/tx/0x58889376a496221f03b5424e3959ec438ac1973575a2e9aa21005a2ce493e826 3,966.666666666666666666 ERC20 (CLB)
AlphaWallet钱包是一个非常优秀的钱包,跟imToken相比,它有以下功能让辉哥着迷: 1) 支持ERC875代币功能,能进行门票转账等; 2) 支持ERC721代币功能,能进行非同质化物品转让(还未测试); 3) 支持ERC20代币功能; 4) 可以在各种测试环境(Ropsten Test Network)进行代币和智能合约的测试;
在此特别感谢张中南/张华武团队开发这么优秀好用的产品出来!
推荐一个币乎生态的钱包MYKEY,咕噜土豪,目前EOS,ETH转账免费,每日签到还有KEY赠送,速速下载。
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!