按照本教程可以轻松每天挖上亿个Libra,那么这些币有价值么
Facebook推出了他们的加密货币方案:Libra,并且同步开源了代码和测试网络。众所周知,Libra是稳定币,是不能挖矿的。但是它的测试网络提供了“水龙头”服务,也就是可以相对容易的获得测试币,用于体验。
经过笔者体验,大概平均1分钟能挖到的上限是100万Libra, 如果太快IP会被封禁。
下面讲讲如何开始挖矿。
首先,需要编译代码。代码在:https://github.com/libra/libra
重要提示:Libra的核心代码是用 Rust语言写的, 编译需要一些时间,编译的机器需要一台内存大于3G, 磁盘大于20GB的电脑,操作系统可以是MacOS或Linux,笔者最开始用1G内存,10GB磁盘的VPS会出现磁盘写满、内存不够的情况。
一、下载依赖
Libra提供了自动下载编译依赖的脚本,运行它即可:./scripts/dev_setup.sh
这个过程可能遇到的坑:
(1) protobuf 版本太低, 需要3.6以上, 可以在这里下载:https://github.com/google/protobuf/releases/download/v3.6.1/protoc-3.6.1-linux-x86_64.zip
(2) 依赖的一些系统库缺失,比如zlib, 通过yum或apt-get安装即可,没有版本要求。
笔者在MacOS、CentOS、 Ubuntu上都试验过,只有Mac是完全无障碍的, 其他系统均会遇到一些缺失依赖的问题。大概原因可能是Facebook的程序员都是用Mac开发。
二、编译源码
依赖安装完后,运行 :
source ~/.cargo/env
cargo build
如果最后又有编译器爆出语法错误,可以升级一下rustc到最新版本, 升级方法 rustup update nightly.
三、创建本地钱包
编译成功后,就可以连接到测试网络啦, 运行:./scripts/cli/start_cli_testnet.sh
这个过程中可能还会出现编译,但是只会出现一次。
进入这个界面代表连接 Libra测试网成功
在上图的交互式界面输入 account create, 就会创建一个由私钥控制的账户,通过account list可以查看本地所有创建成功的账户。每个账户有一个唯一的地址和序号。
创建账号
列出所有账户
大家注意到,每个账户有个sequence number, 这是个递增的序列号, 每转出一笔资金,这个序列号加一。这个序号是用来解决交易的分布式定序问题的。
好了,看看自己有多少币: account balance 序号 或者 地址
你会发现一分钱没有,这就对了。
重要提示:退出时一定记得保存钱包的助记词:account write wallet.data, 然后你的助记词会保存到wallet.data里面,只要这个文件你不丢,任何地方都可以用account recover wallet.data 恢复你的钱包。
四、挖矿
通过mint命令挖矿
上图演示了,通过account mint 账户地址 金额 就可以挖矿了,目前来看单次金额最多100万,如果太频繁会被封禁 IP
五、转账
转账通过transfer命令完成: transfer 出资人 收款人 额度
从本地钱包0号账户装给某个地址888 Libra
Libra转账貌似没有生成一个Transaction ID, 而是一个二元组:<转账人地址、序列号>
通过这个二元组可以查看到交易状态:
Libra的交易结构
六、测试币值钱么?
目前,按照本教程可以轻松每天挖上亿个Libra,那么这些币有价值么? 有个issue讨论这个话题:https://github.com/libra/libra/issues/91
结语:
笔者自己也在做一个区块链项目:https://github.com/xuperchain/xuperunion, 我觉得目前Libra的唯一亮点是自研的Move语言合约虚拟机,其他的概念都不新鲜。 而且,它的账本也不支持分叉,感觉主要还是一个联盟链的解决方案,最终能否实现马克扎克伯格的宏伟蓝图呢?我们拭目以待。