lotus是什么
lotus是filecoin分布式存盤網路的一種技術實作
所有的filecoin的技術實作都遵從于filecoin規范
通過lotus實作了錢包,礦工,存盤證明,時空證明,存盤市場,檔案檢索等一系列的功能.
Filecoin的4種技術實作
go-filecoin(written in Go)-協議實驗室開發
lotus(written in Go)-協議實驗室 #重點
fuhon(written in C++)-soramitsu
forest(written in Rust)-chainsafe
Filecoin的扇區封裝及挖礦流程
首先,安裝挖礦軟體并運行;其次創建節點并加入網路,加入之后同步鏈資料、創建錢包地址;
之后,挖礦需要質押FIL,需要購買或者借貸FIL給錢包地址打入FIL V丨hugoschan.
挖礦正式開始:礦工獲取存盤訂單,資料密封(扇區封裝,耗時最長),生成復制證明,驗證資料,形成有效算力,獲得打包權,提交時空證明,獲得出塊獎勵,
算力越大的礦工,獲得區塊打包的權利或者概率越大,這是涉及兩個引數:贏票率和出塊率;贏票率就是獲得選票的概率,出塊率就是獲得區塊獎勵的概率,
而在上面的流程中,扇區封裝是一個不可忽略的因素,通過復制證明封裝扇區是整個流程中計算量相對龐大的程序,從而生成該扇區獨一無二的標識碼,
一旦資料被封裝,存盤礦工將生成證明,運行SNARK來壓縮證明;最后,將壓縮后的結果提交到區塊鏈,作為存盤承諾的證明,
通俗易懂的理解
我們用割麥子來比喻挖礦,可能會更加通俗易懂一些,
首先,大家所謂的礦機其實就是存盤集群,就像我們用來裝麥子的袋子,沒有存盤資料的礦機是沒有什么價值,就像沒有裝滿麥子的袋子也是沒有什么價值的,
扇區封裝獲得算力的程序就像割麥子一樣,
我們用收割機來割麥子,就像我們通過搭建計算集群來對資料進行計算封裝獲取算力,
收割好了麥子裝進袋子,就像將資料封裝進礦機的硬碟里,然后將收割好的麥子拿去賣掉換錢的程序,就是參與區塊打包獲得區塊獎勵一樣,收割的麥子越多賣的錢越多,封裝的資料越多、算力越大,獲得的區塊獎勵也越多,
但是,如果你收割好的麥子沒有進行妥善保存,麥子在倉庫里被老鼠吃掉了、淋雨受潮變質甚至被偷掉了,你收割的麥子也會損失掉,
而你封裝好資料的扇區如果不能完成挑戰提交時空證明,算力也會被扣罰,
與傳統的位元幣挖礦原理不同的是,位元幣挖礦的算力是恒定的,礦機接入網路之后,每天的產幣量就是一個恒定值,
但Filecoin挖礦則不同,Filecoin挖礦的算力值根據封裝資料來定,這意味著它的算力是在不斷累積的,
總結
通過以上分析我們可以看到,Filecoin挖礦的最基本在于有效算力,礦工的算力越高,贏票率越大,相應獲得區塊獎勵的概率也就越大,挖礦收益越高,而扇區封裝效率越快、有效算力增長速度自然越快,有效算力占比越高,其出塊率也就越高,產幣量越大,
根據官方檔案,查看需要的配置要求
安裝了macOS或Linux系統
8核CPU和32 GiB RAM
支持Intel SHA擴展的模型
有足夠的空間來存盤當前的Lotus鏈,最好在SSD存盤介質上,該鏈每周增長約12 GiB.
安裝Ubuntu系統
安裝Ubuntu系統的教程
配置系統環境
#軟體依賴
sudo apt install mesa-opencl-icd ocl-icd-opencl-dev gcc git bzr jq pkg-config curl clang build-essential hwloc libhwloc-dev wget -y && sudo apt upgrade -y
#lotus 需要 rustup
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
#軟體依賴
wget -c https://golang.org/dl/go1.15.5.linux-amd64.tar.gz -O - | sudo tar -xz -C /usr/local
#使用本地安裝包安裝
rz go1.15.5.linux-amd64.tar.gz
tar xf go1.15.5.linux-amd64.tar.gz -C /usr/local
lotus加速(中國)
##加入變數中
vim /etc/profile
#Lotus
export IPFS_GATEWAY=https://proof-parameters.s3.cn-south-1.jdcloud-oss.com/ipfs/
#Go語言
export GOPROXY=https://goproxy.cn
#生效
source /etc/profile
安裝Filecoin-lotus
#下載原始碼
#第一個是github
git clone https://github.com/filecoin-project/lotus.git
#第二個是碼云(國內下載快)
git clone https://gitee.com/bd_bd/lotus.git
#進入lotus目錄
cd lotus/
#編譯安裝
make clean all 或者 make clean && make all
make install
開始運行filecoin-lotus
#安裝成服務
make install-daemon-service
make install-miner-service
##啟動運行同步區塊命令verbose模式
lotus daemon
systemctl start lotus-daemon # 服務模式
#注:剛運行的終端不要關閉,接下來,打開一個新的終端界面,用來查看節點狀態
lotus net peers | wc -l #檢查區塊鏈節點連接數量
lotus sync wait #檢查區塊鏈同步高度
lotus命令整理
lotus啟動停止
# 首次啟動,從快斬訓入鏈資料
lotus daemon --import-snapshot <filename>
# 普通啟動
lotus daemon
# 停止
lotus daemon stop
# 匯入快照不啟動
lotus daemon --import-snapshot --halt-after-import <filename>
修改礦工地址(owner/worker/control)
# 查看礦工關聯的地址資訊
lotus-miner actor control list
# 修改owner地址
lotus-miner actor set-owner --really-do-it <address>
# 修改control地址
lotus-miner actor control set --really-do-it <address1 address2 ...>
# 修改worker地址
lotus-miner actor propose-change-worker <address>
lotus-miner actor confirm-change-worker <address>
從礦工賬戶轉FIL到owner地址
lotus-miner actor withdraw <amount>
管理錢包
# 創建錢包
lotus wallet new bls
lotus wallet new
lotus msig create singeraddress1 signersaddress2..
# 備份錢包
lotus wallet export <address> > <address>.key
# 匯入錢包
lotus wallet import <address>.key
# 查看錢包地址
lotus wallet list
# 默認錢包地址
lotus wallet deault # 查看默認錢包地址
lotus wallet set-default <address> # 更改默認錢包地址
# 查看錢包余額(default)
lotus wallet balance
# 發送FIL
lotus send <receive address> 3 #從默認錢包發送
lotus send --from <send address> <receive address> 3 #從指定錢包發送
此篇文章到此就結束了!喜歡的小伙伴請收藏點贊關注三連哦!
下一篇我們繼續了解Filecoin-lotus
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/257848.html
標籤:區塊鏈
