Libra第一步-环境搭建、账户、转账

2024-03-03 15:38

本文主要是介绍Libra第一步-环境搭建、账户、转账,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

这几天应该都被Libra刷屏了。FB的Libra在2020年底会推出。这里暂且不详细来讨论Libra的意义和阶段性影响。目前来看Libra是区块链一个阶段性的需求,至于如何发展持续关注。 
笔者尝试搭建Libra环境~

Libra资源相关

这里列举相关Libra的相关资源链接,仅供参考: 
Libra官网: https://libra.org/en-US/ 
白皮书: https://libra.org/en-US/white-paper/ 
Libra技术白皮书: https://developers.libra.org/docs/assets/papers/the-libra-blockchain.pdf 
Libra开发者技术文档: 
Libra-github: https://github.com/libra/libra


Libra-基础环境搭建

基于参考:https://developers.libra.org/docs/my-first-transaction 
来搭建Libra并连接到测试网络。

实验环境

  • Centos7.5、16C、192G、1000G

系统安装配置

基本的系统安装,安装好之后无外乎关闭selinux、防火墙这些基本的配置。 
这里建议安装好之后设置阿里yum,设置完成后:

 
  1. yum update

下载Libra及相关软件安装

下载Libra:

 
  1. git clone https://github.com/libra/libra.git

在制定文件夹解压:

 
  1. cd libra 即可看到下载Libra的项目内容。

  • 安装Golang

安装Golang 
如果单独去下载安装包麻烦的话,那么直接通过wget来下载解压,配置环境变量。

 
  1. wget https://studygolang.com/dl/golang/go1.12.5.linux-amd64.tar.gz
  2. tar -xvf go1.12.5.linux-amd64.tar.gz

配置环境变量。修改/etc/profile文件,路径根据下载安装路径来。

 
  1. vim /etc/profile
  2. 添加
  3. export GOROOT=/usr/go
  4. export GOPATH=/usr/gopath
  5. export PATH=$PATH:$GOROOT/bin:$GOPATH/bin

  • 安装Rust等相关

安装rust

 
  1. curl https://sh.rustup.rs -sSf | sh
  2. rustup toolchain install nightly-2019-05-22-x86_64-unknown-linux-gnu
  3. rustup override set nightly-2019-05-22

安装完成后查看版本信息:

 
  1. root@libra libra]# rustc --version
  2. rustc 1.36.0-nightly (50a0defd5 2019-05-21)
  3. [root@libra libra]# rustup --version
  4. rustup 1.18.3 (435397f48 2019-05-22)

  • 安装cmake

在官网:https://cmake.org/download/ 
选择对应操作系统版本下载,下载后解压:

 
  1. tar -xvzf cmake-3.15.0-rc2.tar.gz
  2. cd cmake-3.15.0-rc2/
  3. ./bootstrap
  4. gmake
  5. gmake install
  6. 以上步骤有点慢,耐心等待~
  • protocol安装配置

文件下载地址:https://github.com/protocolbuffers/protobuf/releases/tag/v3.6.1

选择对应的版本:

 
  1. tar -xvf protobuf-all-3.8.0.tar.gz
  2. cd protobuf-3.8.0/
  3. ./configure
  4. make
  5. make check
  6. sudo make install
  7. protoc --version
  8. 显示:libprotoc 3.8.0

安装测试Libra环境

 
  1. cd libra
  2. ./scripts/dev_setup.sh

显示如下:

 
  1. Installing CMake......
  2. CMake is already installed
  3. Installing Go......
  4. Go is already installed
  5. Installing Protobuf......
  6. Protobuf is already installed
  7.  
  8. Finished installing all dependencies.
  9.  
  10. You should now be able to build the project by running:
  11. source /root/.cargo/env
  12. cargo build

测试网络脚本运行:

 
  1. ./scripts/cli/start_cli_testnet.sh
  2. 比较慢耐心等待~~~

完成后显示如下: 
屏幕快照 2019-06-20 下午4.12.41.png-349.9kB


创建账户及账户状态查看

根据官网的指导,先查看account内容:

屏幕快照 2019-06-20 下午4.23.30.png-210.4kB

  • 创建账户 Alice、Bob
 
  1. libra% account create
  2. >> Creating/retrieving next account from wallet
  3. Created/retrieved account #0 address c94d5411d85442374cc24c0eb0203f1666c9cd681eb4eeedf366905c950c20ee
  4. libra% account create
  5. >> Creating/retrieving next account from wallet
  6. Created/retrieved account #1 address 39c0ff0bdc00b710599e6f4c8c32d2fa873ce360f20b100703eca748e0941f24
  7. libra%

通过account list查看内容:

屏幕快照 2019-06-20 下午4.26.02.png-115.4kB

将Libra Coins添加到Alice和Bob的账户。

根据之前的建account顺序,那么0为Alice、1为Bob,110和50为Libra coin。

 
  1. libra% account mint 0 110
  2. >> Minting coins
  3. Mint request submitted
  4. libra% account mint 1 52
  5. >> Minting coins
  6. Mint request submitted
  7. libra%

检查下0、1account的余额:

 
  1. libra% query balance 0
  2. Balance is: 110
  3. libra% query balance 1
  4. Balance is: 52
  5. libra%

查看账户序列:

 
  1. ibra% query sequence 0
  2. >> Getting current sequence number
  3. Sequence number is: 0
  4. libra% query sequence 1
  5. >> Getting current sequence number
  6. Sequence number is: 0
  7. libra%

交易

根据例子,我们转移10个Libra coin从Alice到Bob:

transfer 0 1 10

  • 0是Alice的帐户的索引。
  • 1是Bob的帐户索引。
  • 10是从Alice的账户转移到Bob的账户的Libra的数量。
 
  1. transfer 0 1 10

下图清晰显示账户转账后的状态:

屏幕快照 2019-06-20 下午4.35.13.png-190.1kB

总结

大致搭建了Lbra的环境,根据官方开发文档实现一些基本的功能。在搭建过程中我把相关软件的版本都列举出来,可能会有一些软件版本的问题导致在编译的时候不通过,建议按照列出的版本来安装。有兴趣可联系我一块交流~~ 
(未完待续)

这篇关于Libra第一步-环境搭建、账户、转账的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/770086

相关文章

阿里开源语音识别SenseVoiceWindows环境部署

SenseVoice介绍 SenseVoice 专注于高精度多语言语音识别、情感辨识和音频事件检测多语言识别: 采用超过 40 万小时数据训练,支持超过 50 种语言,识别效果上优于 Whisper 模型。富文本识别:具备优秀的情感识别,能够在测试数据上达到和超过目前最佳情感识别模型的效果。支持声音事件检测能力,支持音乐、掌声、笑声、哭声、咳嗽、喷嚏等多种常见人机交互事件进行检测。高效推

搭建Kafka+zookeeper集群调度

前言 硬件环境 172.18.0.5        kafkazk1        Kafka+zookeeper                Kafka Broker集群 172.18.0.6        kafkazk2        Kafka+zookeeper                Kafka Broker集群 172.18.0.7        kafkazk3

安装nodejs环境

本文介绍了如何通过nvm(NodeVersionManager)安装和管理Node.js及npm的不同版本,包括下载安装脚本、检查版本并安装特定版本的方法。 1、安装nvm curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash 2、查看nvm版本 nvm --version 3、安装

【IPV6从入门到起飞】5-1 IPV6+Home Assistant(搭建基本环境)

【IPV6从入门到起飞】5-1 IPV6+Home Assistant #搭建基本环境 1 背景2 docker下载 hass3 创建容器4 浏览器访问 hass5 手机APP远程访问hass6 更多玩法 1 背景 既然电脑可以IPV6入站,手机流量可以访问IPV6网络的服务,为什么不在电脑搭建Home Assistant(hass),来控制你的设备呢?@智能家居 @万物互联

高并发环境中保持幂等性

在高并发环境中保持幂等性是一项重要的挑战。幂等性指的是无论操作执行多少次,其效果都是相同的。确保操作的幂等性可以避免重复执行带来的副作用。以下是一些保持幂等性的常用方法: 唯一标识符: 请求唯一标识:在每次请求中引入唯一标识符(如 UUID 或者生成的唯一 ID),在处理请求时,系统可以检查这个标识符是否已经处理过,如果是,则忽略重复请求。幂等键(Idempotency Key):客户端在每次

pico2 开发环境搭建-基于ubuntu

pico2 开发环境搭建-基于ubuntu 安装编译工具链下载sdk 和example编译example 安装编译工具链 sudo apt install cmake gcc-arm-none-eabi libnewlib-arm-none-eabi libstdc++-arm-none-eabi-newlib 注意cmake的版本,需要在3.17 以上 下载sdk 和ex

pip-tools:打造可重复、可控的 Python 开发环境,解决依赖关系,让代码更稳定

在 Python 开发中,管理依赖关系是一项繁琐且容易出错的任务。手动更新依赖版本、处理冲突、确保一致性等等,都可能让开发者感到头疼。而 pip-tools 为开发者提供了一套稳定可靠的解决方案。 什么是 pip-tools? pip-tools 是一组命令行工具,旨在简化 Python 依赖关系的管理,确保项目环境的稳定性和可重复性。它主要包含两个核心工具:pip-compile 和 pip

跨系统环境下LabVIEW程序稳定运行

在LabVIEW开发中,不同电脑的配置和操作系统(如Win11与Win7)可能对程序的稳定运行产生影响。为了确保程序在不同平台上都能正常且稳定运行,需要从兼容性、驱动、以及性能优化等多个方面入手。本文将详细介绍如何在不同系统环境下,使LabVIEW开发的程序保持稳定运行的有效策略。 LabVIEW版本兼容性 LabVIEW各版本对不同操作系统的支持存在差异。因此,在开发程序时,尽量使用

Go Playground 在线编程环境

For all examples in this and the next chapter, we will use Go Playground. Go Playground represents a web service that can run programs written in Go. It can be opened in a web browser using the follow

沁恒CH32在MounRiver Studio上环境配置以及使用详细教程

目录 1.  RISC-V简介 2.  CPU架构现状 3.  MounRiver Studio软件下载 4.  MounRiver Studio软件安装 5.  MounRiver Studio软件介绍 6.  创建工程 7.  编译代码 1.  RISC-V简介         RISC就是精简指令集计算机(Reduced Instruction SetCom