橱柜扫地僧
橱柜扫地僧

Monkey Reading

如何完成一笔 Libra 交易?

6 月 18 日,Facebook 宣布,计划于 2020 年发布名为 Libra 的数字货币。目前,Facebook 已经与包括 Visa、MasterCard、Uber、Paypal、eBay 等 27 家公司联合建立了协会,用于管理 Libra 货币,并计划开发名为 Calibra 的手机应用程序,存储和交易这一数字货币。

笔者立即找来了 Libra 的白皮书,中文白皮书首页赫然写着:

Libra 的使命是建立一套简单的、无国界的货币和为数十亿人服务的金融基础设施。

相比目前市面上已有的数字货币,Libra 让人耳目一新,走在监管和自由的中间道路上。它实质上是这是一种可能走进寻常百姓家的数字货币。

那问题来了:该如何完成一笔 Libra 交易呢?

我们去 Libra 的官网看看吧,支持简体中文。

目前是可以在 Libra 的测试网络上完成交易的,一起来玩玩吧,所有充值和转账金额都只是虚拟数据,不需要担心!

准备工作

  1. Libra Currently available for macOS and Linux.这里我们选择 macOS;
  2. 在终端输入 git 来检验是否安装好了 Git ,没有安装的话,使用代码 homebrew 来安装即可,对应代码 brew install git

克隆 Libra

打开终端输以下代码:

git clone https://github.com/libra/libra.git && cd libra

完成后,运行安装脚本

./scripts/dev_setup.sh


然后耐心等着吧,我是运行后就直接下班了,直接第二天来接着玩的。

连接到测试网络

运行 CLI :

./scripts/cli/start_cli_testnet.sh

该条命令会编译好本地客户端,并把客户端连接到 Libra 测试网络中的可信节点上。连接成功后,界面会提示我们输入指令。

新建账户

Libra 网络的操作指令都是可以查询到的。在终端输入指令新建账户:

account create

运行后,页面会返回你的钱包地址:

Created/retrieved account #0 address 69ffe164e03cb52a901a45c1806e7ba5fdd2b00116f7ed07d1a6e631d3612527

这是一串没有规则的数字组合,具有唯一性,可以用来指向你的数字钱包。这就是数字货币钱包的特征,可以理解为我们的手机号或者身份证号。

逻辑上稍微推导下,要完成一笔交易,必须存在两个对象,也就是两个账户,所以我们再次运行指令 account create 新建另一个账户。此时输入指令 account list 查看两个账户的详情。


建议将账户信息在笔记应用中备份下来,高频关键信息需要备份。

给账户充值

账户新建好了之后,钱包都是空的,需要充值。对应指令:

account mint 0 826

这里的 0 就是账户的编号,826 就是充值的金额,反正是测试网络,怎么喜欢怎么写。界面返回:

>>Minting coins

Mint request submitted

充值完成✅了,来验证下现在账户的余额:

query balance 0

返回:

Balance is: 826

使用同样的办法给另一账户充值 999 :

account mint 1 999

完成以后,我们准备转账。

发起转账

从第一个账户转 2 个 Libra 币给第二个账户吧。

transfer 0 1 2

这就话的意思就是从 0 账户向 1 账户转账 2 个 Libra 币。返回:

>> Transferring

Transaction submitted to validator

To query for transaction status, run: query txn_acc_seq 0 0 <fetch_events=true|false>

转账完成,现在来查查看:

第一个账户:

Balance is: 824

第二个账户:

Balance is: 1001

到这一步,你就已经完成了一笔 Libra 的转账!

这可是一笔在区块链网络上的交易呀,很可能是你人生第一次使用数字货币交易哩!

Congratulations!

You have successfully executed your transaction on the Libra testnet and transferred 2 Libra from 0’s account to 1’s account!

你可以使用以下指令来查询这条转账记录:

query txn_acc_seq 0 0 true

界面返回:

>> Getting committed transaction by account and sequence number

Committed transaction: SignedTransaction {

raw_txn: RawTransaction {

sender: 69ffe164e03cb52a901a45c1806e7ba5fdd2b00116f7ed07d1a6e631d3612527,

sequence_number: 0,

payload: {,

transaction: peer_to_peer_transaction,

args: [

{ADDRESS: b0448ca5490ad6de1f643ec06399891708f6a2983e445005cec86808f90fc969},

{U64: 2000000},

]

},

max_gas_amount: 10000,

gas_unit_price: 0,

expiration_time: 1561020666s,

},

public_key: 46dbe703f35c6e988fa4bbb05808ca7bb759962d182f813ac8cfc8fe710a44f8,

signature: Signature( R: CompressedEdwardsY: [235, 227, 156, 16, 37, 125, 158, 127, 253, 1, 45, 46, 142, 130, 225, 10, 124, 240, 13, 5, 166, 188, 13, 136, 205, 3, 143, 192, 150, 103, 46, 200], s: Scalar{

bytes: [102, 102, 178, 74, 22, 225, 60, 27, 173, 222, 127, 15, 138, 14, 162, 135, 175, 246, 184, 64, 240, 55, 222, 224, 140, 156, 177, 250, 153, 99, 70, 1],

} ),

}

看吧,就是这么简单,赶快去试试看吧。这些操作步骤在 Libra 的公开文档中写的很清楚。

CC BY-NC-ND 2.0 版权声明

喜欢我的文章吗?
别忘了给点支持与赞赏,让我知道创作的路上有你陪伴。

加载中…

发布评论