美文网首页IPFS-星际文件传输系统IPFS教程
【Filecoin源码仓库全解析】第二章:如何创建账户钱包并获取

【Filecoin源码仓库全解析】第二章:如何创建账户钱包并获取

作者: 嘉乐的SOHO | 来源:发表于2019-03-07 15:08 被阅读1次

    欢迎大家来到第二章,经过 前章《【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这几个概念意义,以及其所对应的标识:

    [图片上传失败...(image-6a6adc-1551942464376)]

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

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

    没有网络拓扑,何来节点的概念?

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

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

    节点ID

    节点(Node)的职能包含了两重角色,四重身份,

    其中有三种不同角色的矿工身份属性:

    1)存储使用方(user)

    2)矿工(miner:存储提供、检索、修复)

    节点ID是节点的唯一标识,类似姓名(永不重复)

    查看方式:

    go-filecoin daemon
    
    go-filecoin id
    
    

    用途:

    主要用于节点的查找发现、节点与节点之间的通信,节点日志Trace等。

    账户ID

    账户(account)是无论哪一重角色都需要的基本属性,账户ID和节点ID呈一一对应关系,和钱包地址一对多关系(即一个节点账户下,可存在多个钱包地址),直接和交易FIL Balance挂钩,由节点自动初始化生成。

    钱包地址

    钱包地址:顾名思义,类似银行卡卡号,是区块链系统中必不可少的一环,一般是非对称加密的公钥。这里钱包地址是
    由节点自动初始化生成,由go-filecoin wallet *管理,如下图所示,地址信息十分重要,查询余额,导出和导入都需要。

    image

    钱包地址在一个账户下,可支持新增,导入,非常灵活

    同时,我们也可以通过go-filecoin wallet addrs *或在.filecoin/config.json下,查看、管理和配置钱包地址的相关信息。

    矿工ID

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

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

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

    内容ID

    内容ID也叫CID,与IPFS中所强调的一样,在Filecoin网络中将为每份文件数据生成唯一的CID,这是为了方便Merkle去重以及直接通过内容快速索引数据(IPFS与Filecoin数据传输协议层的精髓),在后续存储需求方的使用操作中,我们就会用到。这也是未来基于Filecoin编写商业应用、迁移自身业务系统数据的核心键值对数据

    2.3 创建账户钱包

    默认生成

    节点在初始化过程中,将自动为我们生成一个defaultAddress,我们可以在节点配置文件中可以查看到:

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

    创建新的钱包

    go-filecoin wallet addrs new
    

    导出节点钱包

    go-filecoin wallet export <address>
    

    导入其他钱包

    go-filecoin wallet import <wallet_file>
    

    2.4 获取FIL Mock代币

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

    FIL Mock

    Mock代表假数据、纯测试。

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

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

    FIL 代币份额分布与职能

    FIL代币的份额一直是很多人关心的问题,目前的FIL的份额分配比如下:

    总数:20亿枚(估值25.7亿美金)

    • 投资人拥有量:10%
      • 第一批约5200万美金,成本:0.75美元/FIL
      • 第二批约2.05亿美金,成本:1-5美元/FIL
    • 协议实验室团队:15%
    • 基金会:5%
    • 矿工预留量:70%

    FIL Faucet (水龙头)

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

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

    目前因为Filecoin处于公测阶段,这部分Token基本都属于FIL Mock代币,不存在真实的Token权益价值,仅供测试使用,Filecoin正式上线前肯定将重新删档清零。大家不要频繁撸羊毛了,无意义,且测试网机房资源部署不多,压力大,不稳定。

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

    通过Faucet获取FIL

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

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

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

    1)可视化表单

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

    image

    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}
    
    image

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

    image

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

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

    参考文献

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

    本章赞助品牌:

    image

    科极星球 坐标中国深圳,是国内第一批IPFS和Filecoin生态布道者。科极星球团队一直专注于研发、生产、销售基于IPFS的硬件设备以及IPFS生态应用,为IPFS生态体系的不同层次参与者提供包括矿机、矿场、托管、数据支持、应用开发、知识服务等在内的全方位立体化服务;目前已经部署北上广深港及周边多个矿场,并率先推出存储矿池CSPOOL,产品和服务已经覆盖包括日韩、欧美、东南亚在内全球各地。

    感谢 科极星球嘉乐SOHO的原创内容提供支持。

    联系作者:

    深夜写作,不免有不足之处,欢迎指正和更多讨论,可私信微信公众号:jialesoho,或者加我微信:daijiale6239,如果觉得对您有帮助,可以帮点击好看推广打赏支持噢,感激不尽!

    image

    (识别图中二维码,关注嘉乐SOHO微信公众号)

    相关文章

      网友评论

        本文标题:【Filecoin源码仓库全解析】第二章:如何创建账户钱包并获取

        本文链接:https://www.haomeiwen.com/subject/nficpqtx.html