在開始玩libra測試網絡以前先來畫畫libra白皮書中的重點,好比幣怎麼產生,怎麼交易等。git
創建一套簡單的、無國界的貨幣和爲數十億人服務的金融基礎設施
效果是好比你要到美國去,須要點美圓,那麼能夠經過機構把人民幣換成libra幣,再兌換成美圓,或者直接用libra幣進行交易。就像移動支付同樣簡單。github
咱們憑什麼相信libra幣
將所有使用真實資產儲備(稱爲「Libra 儲備」)做爲擔保,並由買賣 Libra 並存在競爭關係的交易平臺網絡提供支持安全
須要有大量資產作信用背書。Libra 協會是一個獨立的非營利性成員制組織,總部設在瑞士日內瓦。協會旨在協調和提供網絡與資產儲備的管理框架,並牽頭進行可以產生社會影響力的資助,爲普惠金融提供支持。網絡
因此這個協會權利巨大,前提你得信任這個協會. Libra 協會的成員將包括分佈在不一樣地理區域的各類企業、非營利組織、多邊組織和學術機構框架
任何持有 Libra 的人均可以得到高度保證, 他們可以根據匯率將本身持有的這種數字貨幣兌換爲當地貨幣,就像在旅行時將一種貨幣換成另外一種貨幣同樣。這種方法相似於過去引入其餘貨幣的方式:確保這種貨幣能夠用於換取真實資產,好比黃金。目的是爲了幫助培養人們對新貨幣的信任,並在貨幣誕生初期實現普遍使用。儘管Libra 不會使用黃金做爲支持,但它將採用一系列低波動性資產(好比,由穩定且信譽良好的中央銀行提供的現金和政府證券)進行抵押。測試
Libra 儲備中的資產將由分佈在全球各地且具備投資級信用評價的託管機構持有,以確保資產的安全性和分散性fetch
只有 Libra 協會可以製造 (mint) 和銷燬 (burn) Libra
只有當受權經銷商投入法定資產從協會買入 Libra 幣以徹底支持新幣時,Libra 幣纔會被製造。只有當受權經銷商向協會賣出 Libra 幣以換取抵押資產時,Libra 幣纔會被銷燬。ui
Libra 協會的一個重要目標就是逐步提升去中心化的程度
協會將逐步實現 Libra 網絡的非許可型管理和共識。協會將力求在五年內啓動這一過渡,並以此逐漸減小對創始成員的依賴。一樣地,做爲 Libra 儲備的管理者,Libra 協會也會力爭最大程度下降對自身的依賴。this
Libra測試版對cmake 與proto版本要求比較高,建議從源碼先安裝這倆,要否則後面可能會報這個錯:google
Compiling grpcio-sys v0.4.4 error: failed to run custom build command for `grpcio-sys v0.4.4` Caused by: process didn't exit successfully: `/root/libra/libra/target/debug/build/grpcio-sys-18712f499919ddc1/build-script-build` (exit code: 101) --- stdout cargo:rerun-if-changed=grpc_wrap.cc cargo:rerun-if-changed=grpc cargo:rerun-if-env-changed=GRPCIO_SYS_USE_PKG_CONFIG cargo:rerun-if-env-changed=CARGO_CFG_TARGET_OS
安裝cmake
wget https://github.com/Kitware/CMake/releases/download/v3.16.0-rc3/cmake-3.16.0-rc3.tar.gz tar zxvf cmake-3.16.0-rc3.tar.gz cd cmake-3.16.0-rc3 yum install -y openssl-devel ./configure && make && make install
安裝protobuf
yum install -y autoconf wget https://github.com/google/protobuf/releases/download/v3.6.1/protobuf-all-3.6.1.tar.gz tar zxvf protobuf-all-3.6.1.tar.gz ./autogen.sh ./configure make make install
git clone https://github.com/libra/libra.git cd libra git checkout testnet ./scripts/dev_setup.sh
這裏會幫助你安裝go rust啥的,腳本里安裝的protoc cmake可能不能用,因此上面先裝了
./scripts/cli/start_cli_testnet.sh
而後就會進入到這個交互式命令行中
usage: <command> <args> Use the following commands: account | a Account operations query | q Query operations transfer | transferb | t | tb <sender_account_address>|<sender_account_ref_id> <receiver_account_address>|<receiver_account_ref_id> <number_of_coins> [gas_unit_price (default=0)] [max_gas_amount (default 10000)] Suffix 'b' is for blocking. Transfer coins from account to another. help | h Prints this help quit | q! Exit this client Please, input commands: libra%
建立帳戶
0是Alice 1是Bob
libra% account create >> Creating/retrieving next account from wallet Created/retrieved account #0 address 3ed8e5fafae4147b2a105a0be2f81972883441cfaaadf93fc0868e7a0253c4a8
這裏返回索引0 和一個hex帳戶地址,0只是本地方便你操做的.
再建立一個
libra% account create >> Creating/retrieving next account from wallet Created/retrieved account #1 address 8337aac709a41fe6be03cad8878a0d4209740b1608f8a81566c9a7d4b95a2ec7
此時就能夠看到兩個帳戶了
libra% account list User account index: 0, address: 3ed8e5fafae4147b2a105a0be2f81972883441cfaaadf93fc0868e7a0253c4a8, sequence number: 0 User account index: 1, address: 8337aac709a41fe6be03cad8878a0d4209740b1608f8a81566c9a7d4b95a2ec7, sequence number: 0
發行貨幣
使用mint命令「鑄幣」,就和髮型貨幣同樣同樣,這裏與比特幣的區別就是比特幣是算力「挖」出來的,而libra只用權威機構敲個命令。。。
libra% account mint 0 110 >> Minting coins Mint request submitted
0 是你帳戶索引,110就是「銀子」
再給52大洋給Bob
libra% account mint 1 52 >> Minting coins Mint request submitted
查詢帳戶
libra% query balance 0 Balance is: 110 libra% query balance 1 Balance is: 52
轉帳
先看交易sequence,每轉出一次加1
libra% query sequence 0 >> Getting current sequence number Sequence number is: 0 libra% query sequence 1 >> Getting current sequence number Sequence number is: 0
Alice(0)轉 10大洋給Bob(1)
libra% transfer 0 1 10 >> Transferring Transaction submitted to validator To query for transaction status, run: query txn_acc_seq 0 0 <fetch_events=true|false>
而後再看下交易sequence
libra% query sequence 0 >> Getting current sequence number Sequence number is: 1 libra% query sequence 1 >> Getting current sequence number Sequence number is: 0
雙方帳戶:
libra% query balance 0 Balance is: 100 libra% query balance 1 Balance is: 62
Alice少了10元,Bob多了10元.
全球化的貨幣必將到來,只是否是libra不知道,可是libra的全球推廣必然會遭受不少國家的巨大阻力,這多是歷史上一次巨大的貨幣戰爭。
最後祝願你們未來可以一行命令修改本身帳戶裏的數字~
sealyun QQ羣:98488045