前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何使用AlphaWallet钱包进行测试网的代币转账/冻结/锁仓投放功能验收?

如何使用AlphaWallet钱包进行测试网的代币转账/冻结/锁仓投放功能验收?

作者头像
辉哥
发布2018-08-22 11:09:18
7350
发布2018-08-22 11:09:18
举报
文章被收录于专栏:区块链入门区块链入门

1,摘要

【本文目标】

通过本文实践,可以使用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等各种测试网络,降低智能合约上主网不可篡改的风险。

2. 采用AlphaWallet进行CLB基本功能测试

2.1 发布CLB代币

获取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亿;

2.2 下载AlphaWallet钱包,导入私钥到钱包

1)下载安装APP

辉哥在官网(https://awallet.io/)下载APP完成安装。

设置网络为Ropston(test)网络。

2)导入私钥地址到钱包

地址:0xD1F7922e8b78cBEB182250753ade8379d1E09949

私钥:FE8514896FE1882D8751AD012E208889889602FB374A249BCF9DA9FD26EF3655

导入成功后就可以看到CLB代币,一共有10个亿。

初始10亿CLB

2.3 转账,新的钱包能呈现代币金额

1) 创建钱包

在AlphaWallet上创建新的钱包

ACCOUNT2 “0xda5c82f12f5c2ab1ef918afefe089c76103f453c ”

2) 转账/查询

切换到ACCOUNT1账号下,转账10000个CLB给ACCOUNT2

转账成功后,等待2分钟,可以看到ACCOUNT2已经有1万个CLB存在了。

交易信息:

https://ropsten.etherscan.io/tx/0xebab900d530f2eecbeba197bea0abc928ae00c6b3e77eee42b86e517e941d0ec

ACCOUNT2账号余额截图:

2.4 冻结账户不可进行转账

使用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解冻结掉。

3. 采用AlphaWallet进行CLB锁仓功能验收测试

参考文章《第十九课 代币锁仓后逐步释放的ERC20智能合约实践》 完成锁仓合约的发布。

3.1 创建锁仓智能合约

锁仓合约编译成功后,在2018/08/14 16:25时在remix执行创建锁仓合约动作。假设该锁仓合约为激励辉哥参与彩贝项目发放的代币期权。

收益账户为"0xda5c82f12f5c2ab1ef918afefe089c76103f453c";

目标开始时间:2018/08/14 16:35 ;

锁仓冻结操作时间:2分钟;

代币期权周期时间:10分;

支持激励撤销功能;

代码语言:javascript
复制
 constructor("0xda5c82f12f5c2ab1ef918afefe089c76103f453c", "1534235700", "120", "600", true)

智能合约记录:

https://ropsten.etherscan.io/tx/0x74e3cae0a6872282e396f91899f502e2f85ae54a3ec31d7f53a739383854557a

智能合约的地址:

Contract 0xaf9cdde9bbee1b3d26180ce1daeab540df33cf3d

3.2 转账到锁仓智能合约

在2018/08/14 16:30,公司老板在AlphaWallet下,从ACCOUNT1账户往锁仓智能合约打20000个CLB。

转账成功的交易记录:

https://ropsten.etherscan.io/tx/0x84d6e6f3e4d10607d14fe993bd1afd750db1edc9624261bb781c1799e805fff7

3.3 执行后代币能释放到目标账户

在2018/08/14 16:38时,在ACCOUNT1下老板执行释放期权的函数调用:

代码语言:javascript
复制
release("0xe37ffd55b6c135209b6742b7fbe096ae2837fce6")

执行截图:

15.释放激励

执行成功链接:

https://ropsten.etherscan.io/tx/0xe9063edca480ea504028e10583178929024954c828107bd1acb49ec8e0955f6f

查看AlphaWallet 辉哥的账号"0xda5c82f12f5c2ab1ef918afefe089c76103f453c",已收到了6400个CLB代币。

3.3 取消代币期权激励,返回代币到ACCOUNT1账号

辉哥因为个人原因,需要离开彩贝项目组。老板在ACCOUNT1账号在16:40时执行取消代币期权激励命令函数,把未分配的代币回收到ACCOUNT1账号下。

代码语言:javascript
复制
revoke("0xe37ffd55b6c135209b6742b7fbe096ae2837fce6")

执行截图:

  1. 合同解除,返回代币

未分配CLB代币已打回到ACCOUNT1 老板账户下。

交易记录为

https://ropsten.etherscan.io/tx/0x16f4567f96a58b3f94699049e89db5b2b2b3d3d334daffa7e5f7e5ad53dd2d31

返回了 9,633.333333333333333334 ERC20 (CLB)。

ACCOUNT1更新

3.4 剩余已授权未释放部分发放给辉哥

16:42,因为时间差的原因,还需要执行release命令把剩余已授权未释放部分发放给辉哥。

代码语言:javascript
复制
release("0xe37ffd55b6c135209b6742b7fbe096ae2837fce6")

执行成功记录:

https://ropsten.etherscan.io/tx/0x58889376a496221f03b5424e3959ec438ac1973575a2e9aa21005a2ce493e826

3,966.666666666666666666 ERC20 (CLB)

4 总结

AlphaWallet钱包是一个非常优秀的钱包,跟imToken相比,它有以下功能让辉哥着迷:

1) 支持ERC875代币功能,能进行门票转账等;

2) 支持ERC721代币功能,能进行非同质化物品转让(还未测试);

3) 支持ERC20代币功能;

4) 可以在各种测试环境(Ropsten Test Network)进行代币和智能合约的测试;

在此特别感谢张中南/张华武团队开发这么优秀好用的产品出来!

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018.08.14 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1,摘要
  • 2. 采用AlphaWallet进行CLB基本功能测试
  • 2.1 发布CLB代币
    • 2.2 下载AlphaWallet钱包,导入私钥到钱包
      • 2.3 转账,新的钱包能呈现代币金额
        • 2.4 冻结账户不可进行转账
        • 3. 采用AlphaWallet进行CLB锁仓功能验收测试
          • 3.1 创建锁仓智能合约
            • 3.2 转账到锁仓智能合约
              • 3.3 执行后代币能释放到目标账户
                • 3.3 取消代币期权激励,返回代币到ACCOUNT1账号
                  • 3.4 剩余已授权未释放部分发放给辉哥
                  • 4 总结
                  领券
                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档