[IPFS挖矿教程] 【Filecoin源码仓库全解析】第二章:如何创建账户钱包并获取FIL Mock代币

[复制链接]
16612 |0
发表于 2019-3-3 17:13:04 | 显示全部楼层 |阅读模式
欢迎大家来到第二章,经过前章《【Filecoin源码仓库全解析】第一章:搭建Filecoin测试节点》的内容阅读后,我们应该已经具备在自己的机器上部署Filecoin测试节点的能力,本章我们将介绍Filecoin节点信息、用户账户钱包、矿工角色等相关概念,以及如何获取FIL Mock代币。

2.1 前章问题补充感谢之前一些读者给的建议,有一些没有叙述清楚的地方,这边就上一章问题补充一下:

之前大部分的依赖安装流程需要科学上网,gx在编译时候默认拉取的是源自https://go.googlesource.com/的依赖包。

对于一些使用linux系统的朋友:其实linux与macOS系统差异并不大,如果觉得源码编译环节比较繁琐,可以直接使用官方发布的filecoin-Linux.tar.gz release包进行后续操作:

下载地址:https://github.com/filecoin-project/go-filecoin/releases

#传输至linux远程机器
scp Downloads/filecoin-Linux.tar.gz user_name@remote_server_ip:/user_name
#解压
tar -zxvf filecoin-Linux.tar.gz
#运行节点程序
./go-filecoin *

注意:官方的release是2月13号发布的,并不是最新的包,可能在后续操作中,与官方文档在一些细节地方会有出入。
2.2 区分节点ID、账户、钱包地址、矿工ID、内容ID在创建账户钱包,获取FIL Mock代币之前,我们需要重点区分节点ID、账户、钱包地址和矿工ID这几个概念意义,以及其所对应的标识:

如图所示,它们的层级关系一目了然:

在第一章中,我们在自己的主机上安装了go-filecoin的客户端,你可以理解为这个客户端是用来初始化、启动和管理节点的应用程序。
没有网络拓扑,何来节点的概念?


当我们启动daemon,开放自身主机端口,发送网络请求,加入Filecoin对等网络之后,我们才能被称为是一个Filecoin节点(如果之前了解过区块链,应该很好理解)。

下面分别集中介绍一下其他几个概念:

1.节点ID节点(Node)的职能包含了两重角色,四重身份,
其中有三种不同角色的矿工身份属性:
1)存储使用方(user)
2)矿工(miner:存储提供、检索、修复)
节点ID是节点的唯一标识,类似姓名(永不重复)

查看方式:

go-filecoin daemon
go-filecoin id


用途:
主要用于节点的查找发现、节点与节点之间的通信,节点日志Trace等。
2.账户ID账户(account)是无论哪一重角色都需要的基本属性,账户ID和节点ID呈一一对应关系,和钱包地址一对多关系(即一个节点账户下,可存在多个钱包地址),直接和交易FIL Balance挂钩,由节点自动初始化生成。
3.钱包地址
钱包地址:顾名思义,类似银行卡卡号,是区块链系统中必不可少的一环,一般是非对称加密的公钥。这里钱包地址是由节点自动初始化生成,由go-filecoin wallet *管理,如下图所示,地址信息十分重要,查询余额,导出和导入都需要。

钱包地址在一个账户下,可支持新增,导入,非常灵活。同时,我们也可以通过go-filecoin wallet addrs *或在.filecoin/config.json下,查看、管理和配置钱包地址的相关信息。


4.矿工ID与账户钱包不同,矿工(Miner)相关信息和配置并不会在部署好Filecoin节点后自动创建,需要通过后面miner创建的命令手动选择:

go-filecoin miner create 10 100 --price=0 --limit=1000 --peerid `go-filecoin id | jq -r '.ID'`

且通过--peeridgo-filecoin id | jq -r '.ID'的后缀参数可以看出,矿工ID与节点ID存在一一对应关系,节点ID将参与矿工ID的生成。

5.内容ID内容ID也叫CID,与IPFS中所强调的一样,在Filecoin网络中将为每份文件数据生成唯一的CID,这是为了方便Merkle去重以及直接通过内容快速索引数据(IPFS与Filecoin数据传输协议层的精髓),在后续存储需求方的使用操作中,我们就会用到。这也是未来基于Filecoin编写商业应用、迁移自身业务系统数据的核心键值对数据。
2.3 创建账户钱包1.默认生成节点在初始化过程中,将自动为我们生成一个defaultAddress,我们可以在节点配置文件中可以查看到:

vim ~/.filecoin/config.json
"wallet":{
              "defaultAddress":"fcq3t...29"
   },

2.创建新的钱包
go-filecoin wallet addrs new

3.导出节点钱包
go-filecoin wallet export

4.导入其他钱包
go-filecoin wallet import




2.4 获取FIL Mock代币FIL代币的获取一直是很多人关心的问题,这节我们详细来看看FIL代币的一些重点问题:

1.FIL Mock
Mock代表假数据、纯测试。

目前因为Filecoin处于公测阶段,这一阶段内,我们所能接触到的FIL代币基本都属于FIL Mock,不存在真实的Token权益价值,仅供测试使用,Filecoin正式上线前肯定将重新删档清零。

大家不要频繁撸羊毛,无意义,且测试网机房资源部署不多,压力大,别添乱了。

2.FIL 代币份额分布与职能FIL代币的份额也一直是很多人关心的问题,目前的FIL的份额分配比如下:
总数:20亿枚(估值25.7亿美金)

投资人拥有量:10%
第一批约5200万美金,成本:0.75美元/FIL
第二批约2.05亿美金,成本:1-5美元/FIL


协议实验室团队:15%
基金会:5%
矿工预留量:70%


3.FIL Faucet (水龙头)FIL Faucet是一个代币水龙头,可以让一些早期参与的Filecoin节点用户提前获取一定数量的FIL代币参与市场活动:

存储需求方:用户需要在他们的帐户中使用FIL来与矿工进行存储交易。
矿工:使用FIL作为抵押品,参与挖矿。

目前因为Filecoin处于公测阶段,这部分Token基本都属于FIL Mock代币,不存在真实的Token权益价值,仅供测试使用,Filecoin正式上线前肯定将重新删档清零。

小编推测,当Filecoin正式上线后,依然会存在FIL Faucet,届时会有一个更全面的发放策略且发放后的代币肯定具有真实Token价值,将从基金会(5%)或者团队(15%)的部分份额之中解锁。


4.通过Faucet获取FIL

可以使用两种方式,而且都比较简易方便,直奔主题。

不像某些区块链项目,还需要帮忙转发扩散到推特、微博,等一些平台,验证回链后才能获取。

首先,需要通过2.3节中的步骤获取到我们的钱包地址数据,形如:fcq3t...29

1)可视化表单访问:http://user.kittyhawk.wtf:9797,直接提交钱包地址表单即可:

2)命令行发送Curl请求当然也可以直接在命令行内解决,更加高效,
获取钱包地址,并赋值shell变量:

export WALLET_ADDR=`go-filecoin wallet addrs ls`

通过curl的形式post钱包地址,请求表单数据,同时输出反馈值 Message_CID,方便遇到问题trace

echo MESSAGE_CID=`curl -X POST -F "target=${WALLET_ADDR}" "http://user.kittyhawk.wtf:9797/tap" | cut -d" " -f4`

过几分钟后,验证是否发放FIL Mock代币:

go-filecoin wallet balance ${WALLET_ADDR}


成功如上图所示,每个账户将拿到1000枚FIL Mock代币,且每隔24小时都能重新获取一次,不用担心不够用:

至此,我们应该可以通过《【Filecoin源码仓库全解析】第二章:如何创建账户钱包,获取FIL Mock代币》的学习,了解并清楚Filecoin中钱包账户,FIL代币的概念和关系,并顺利获取到自己的FIL Mock代币,准备参与接下来的矿工挖矿和存储数据等操作了,期望帮正在电脑前研究Filecoin源码仓库的你,少走弯路!

下一章,我们将介绍《【Filecoin源码仓库全解析】第三章:存储提供方(矿工)的配置操作》


参考文献https://github.com/filecoin-project/go-filecoin/wiki/Getting-Started#get-fil-from-the-filecoin-faucet




jsib4pptxw0.jpg

jsib4pptxw0.jpg
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表