Facebook加密货币Libra测试网挖矿笔记

按照本教程可以轻松每天挖上亿个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测试网成功

进入这个界面代表连接 Libra测试网成功

在上图的交互式界面输入 account create, 就会创建一个由私钥控制的账户,通过account list可以查看本地所有创建成功的账户。每个账户有一个唯一的地址和序号。

创建账号

创建账号

列出所有账户列出所有账户

大家注意到,每个账户有个sequence number, 这是个递增的序列号, 每转出一笔资金,这个序列号加一。这个序号是用来解决交易的分布式定序问题的。

好了,看看自己有多少币: account balance 序号 或者 地址

你会发现一分钱没有,这就对了。

重要提示:退出时一定记得保存钱包的助记词:account write wallet.data, 然后你的助记词会保存到wallet.data里面,只要这个文件你不丢,任何地方都可以用account recover wallet.data 恢复你的钱包。

四、挖矿

通过mint命令挖矿

通过mint命令挖矿

上图演示了,通过account mint 账户地址 金额  就可以挖矿了,目前来看单次金额最多100万,如果太频繁会被封禁 IP

五、转账

转账通过transfer命令完成: transfer  出资人 收款人 额度

从本地钱包0号账户装给某个地址888 Libra

从本地钱包0号账户装给某个地址888 Libra

Libra转账貌似没有生成一个Transaction ID, 而是一个二元组:<转账人地址、序列号>

通过这个二元组可以查看到交易状态:

Libra的交易结构

Libra的交易结构

六、测试币值钱么?

目前,按照本教程可以轻松每天挖上亿个Libra,那么这些币有价值么? 有个issue讨论这个话题:https://github.com/libra/libra/issues/91

结语:

笔者自己也在做一个区块链项目:https://github.com/xuperchain/xuperunion, 我觉得目前Libra的唯一亮点是自研的Move语言合约虚拟机,其他的概念都不新鲜。 而且,它的账本也不支持分叉,感觉主要还是一个联盟链的解决方案,最终能否实现马克扎克伯格的宏伟蓝图呢?我们拭目以待。

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

Linux应急响应(三):挖矿病毒

0x00前言随着虚拟货币的疯狂炒作,利用挖矿脚本来实现流量变现,使得挖矿病毒成为不法分子利用最为频繁的攻击方式。新的挖矿攻击展现出了类似蠕虫的行为,并结合了高级攻击技术,以增加对目标服务器感染的成功率,通过利用永恒之蓝(EternalBlue)、web攻击多种漏洞(如Tomcat弱口令攻击、WeblogicWLS组件漏洞、Jboss

Facebook的Libra “区块链”到底是如何运作的?

!(https://oscimg.oschina.net/oscnet/92bef84caf83cd4bc7a226e620de32a43ab.jpg)!(https://oscimg.oschina.net/oscnet/7ac531a3e0bdab14fb360a53b885ff4d6c8.jpg)本文深入研究了“关于FacebookL

Twitter的分布式自增ID算法snowflake (Java版)

概述分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的。有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。而twitter的snowflake解决了这种需求,最初Twitter把存储系统从MySQL迁移

Facebook加密货币Libra测试网挖矿笔记 - HelloWorld