Filecoin如何挖礦存儲 Filecoin怎么檢索交易
Filecoin如何進(jìn)行存儲和檢索交易?本篇文章從存儲提供商(也稱為礦工)和想要在 Filecoin 網(wǎng)絡(luò)上存儲數(shù)據(jù)的客戶的角度解釋了 Filecoin 交易是如何運作的。本文中的技術(shù)解釋在查詢數(shù)據(jù)時使用 JSON-RPC API 與 Filecoin 網(wǎng)絡(luò)交互。此接口主要由應(yīng)用程序使用。作為用戶,您可以使用用戶友好的 lotus 命令行工具,它在幕后使用 JSON-RPC API。喜歡的朋友一起看看吧!
介紹
Filecoin 網(wǎng)絡(luò)允許任何人作為存儲提供商參與,從而實現(xiàn)規(guī)模經(jīng)濟(jì)。目前,該網(wǎng)絡(luò)由遍布全球的數(shù)百家存儲提供商組成。內(nèi)容尋址和加密存儲證明可驗證數(shù)據(jù)隨時間的推移是否正確且安全地存儲在礦工的硬件上,從而創(chuàng)建了強(qiáng)大可靠的服務(wù)。
本篇文章涵蓋了 Filecoin 中兩類交易的基本階段,即存儲交易和檢索交易,并詳細(xì)介紹了它們的生命周期。還解釋了用于驗證系統(tǒng)中的參與者是否根據(jù)其承諾履行其職責(zé)的加密證明。
Filecoin 存儲的數(shù)據(jù)
為了將文件存儲在 Filecoin 上,客戶端必須首先將它們導(dǎo)入其本地 Filecoin 節(jié)點。此步驟生成數(shù)據(jù) CID 內(nèi)容標(biāo)識符,唯一描述內(nèi)容的 ID。隨后,數(shù)據(jù)被轉(zhuǎn)移到礦工手中。在 Filecoin 上存儲文件的另一種方式是通過離線交易,本文沒有討論這一點。
可以使用 lotus client import 命令將數(shù)據(jù)本地導(dǎo)入到 Filecoin 節(jié)點。記住結(jié)果數(shù)據(jù) CID(稍后也可以在本地節(jié)點上使用)很重要,因為它必須用于以后從礦工那里檢索數(shù)據(jù)。
將數(shù)據(jù)導(dǎo)入本地節(jié)點后,用戶需要發(fā)起交易。這可以使用 lotus client Deal 命令來完成。該命令將數(shù)據(jù) CID 作為輸入,生成一個 Filecoin Piece,并以交互方式引導(dǎo)用戶完成下面詳細(xì)描述的存儲交易流程。
Filecoin Piece 是協(xié)商用戶存儲在 Filecoin 網(wǎng)絡(luò)上的數(shù)據(jù)的主要單位。Filecoin Piece 不是特定大小,而是由扇區(qū)大小(由網(wǎng)絡(luò)參數(shù)控制)的上限。如果 Filecoin Piece 大于礦工支持的扇區(qū)的大小,則必須將其拆分成更多的 Piece,以便每個 Piece 都適合一個扇區(qū)。
Filecoin Piece 是包含 IPLD DAG 的 CAR 文件,該 IPLD DAG 具有自己的數(shù)據(jù)/有效載荷 CID 和 Piece CID。
CAR 代表內(nèi)容可尋址檔案,CAR 文件是任何 IPLD DAG 的序列化表示,作為其塊的串聯(lián),加上描述文件中圖形的頭(帶有根CID)。
當(dāng)客戶端希望在 Filecoin 網(wǎng)絡(luò)中存儲文件時,他們首先使用 UnixFS 生成文件的 IPLD DAG(這就是lotus client import命令所做的)。表示 DAG 根節(jié)點的散列是 IPFS 樣式的 CID,稱為數(shù)據(jù)/有效負(fù)載 CID。
UnixFS 是一種基于協(xié)議的格式,用于描述 IPFS 中的文件、目錄和符號鏈接。UnixFS 在 Filecoin 中用作提交到 Filecoin 網(wǎng)絡(luò)的文件格式指南。
生成的 CAR 文件用額外的零位填充,以便該文件生成二進(jìn)制 Merkle 樹。
存儲交易流程
用戶可以通過交易在 Filecoin 網(wǎng)絡(luò)中存儲數(shù)據(jù)和檢索數(shù)據(jù)。網(wǎng)絡(luò)中的參與者,礦工(供應(yīng)方)和客戶(需求方),通過存儲交易和檢索交易進(jìn)行互動。
存儲交易的生命周期如下:
1. 發(fā)現(xiàn)
客戶識別礦工并確定他們的當(dāng)前要求,即每 epoch(30秒)的每 GiB 價格。在attoFIL(1 attoFIL等于10^-18*FIL)中,礦工希望收到以接受交易。目前,F(xiàn)ilecoin 中的交易最短持續(xù)時間為 180 天。
通過使用 Filecoin.StateListMiners 方法查詢同步節(jié)點的 JSON RPC API(出于測試目的,使用https://api.node.glif.io公共端點),可以列出所有當(dāng)前活動的礦工:
curl -X POST -H "Content-Type: application/json" \ --data '{ "jsonrpc": "2.0", "method": "Filecoin.StateListMiners", "params": [ null ], "id": 1 }' \ 'https://api.node.glif.io' | jq{ "jsonrpc": "2.0", "result": [ "f011303", "f011092", ...
您可能希望根據(jù)特定提供商在網(wǎng)絡(luò)中的聲譽或?qū)嵙頉Q定。礦工的聲譽指標(biāo)還不是 Filecoin 協(xié)議的一部分,在本文中也沒有涉及。
選擇礦工后,您需要獲取其 PeerID(例如,使用Filecoin.StateMinerInfo方法),以便通過 libp2p 協(xié)議與它們建立安全連接:
curl -X POST -H "Content-Type: application/json" \ --data '{ "jsonrpc": "2.0", "method": "Filecoin.StateMinerInfo", "params": [ "f03274", null ], "id": 1 }' \ 'https://api.node.glif.io' | jq{ "jsonrpc": "2.0", "result": { "Owner": "f03261", "PeerId": "12D3KooWP5D9TmqC45i6L2e2qQHYcuxaUwPdYo6CzqUMVmFEH3N9", ...
然后可以使用 Filecoin.ClientQueryAsk 方法查詢簽名的 StorageAsk。這將建立與所選礦工的直接 libp2p 連接,并請求存儲報價:
curl -X POST https://api.node.glif.io \ -H "Content-Type: application/json" --data-binary @- << EOF{ "jsonrpc": "2.0", "method": "Filecoin.ClientQueryAsk", "id": 1, "params": [ "12D3KooWP5D9TmqC45i6L2e2qQHYcuxaUwPdYo6CzqUMVmFEH3N9", "f03274" ]}EOF{ "jsonrpc": "2.0", "result": { "Price": "100000000000", "VerifiedPrice": "100000000000", "MinPieceSize": 256, "MaxPieceSize": 34359738368, "Miner": "f03274", "Timestamp": 148031, "Expiry": 1199231, "SeqNo": 14 }, "id": 1}
結(jié)果包括該礦工愿意接受的交易細(xì)節(jié),例如允許的 Filecoin Piece 大小范圍和每 epoch 每 GiB 的價格。請注意,提出符合礦工存儲要求的存儲交易方案是前提條件,但不足以確保交易被接受,存儲提供商稍后可能會運行自己的決策邏輯。
2. 協(xié)商和數(shù)據(jù)傳輸
在此階段,雙方就交易條款達(dá)成一致,如交易費用、交易期限、交易開始時間等。
然后將數(shù)據(jù)從客戶端傳輸?shù)降V機(jī)。
3. 發(fā)布
該交易通過 PublishStorageDeals 消息在鏈上發(fā)布,使存儲提供商對該交易公開負(fù)責(zé)。
4. 切換
一旦交易在鏈上發(fā)布,它將被移交給 Storage Mining 子系統(tǒng),以打包到一個扇區(qū)中,該扇區(qū)稍后會被封存,隨后會不斷得到證明。
Storage Mining 子系統(tǒng)
Storage Mining 子系統(tǒng)確保礦工可以有效地將存儲提交到 Filecoin 網(wǎng)絡(luò),并且:
- 通過接收客戶端數(shù)據(jù)和參與存儲交易,參與Filecoin存儲市場。
- 參與Filecoin Storage Power Consensus,驗證并生成數(shù)據(jù)塊以發(fā)展 Filecoin 區(qū)塊鏈,并因此而賺取數(shù)據(jù)塊獎勵和費用。
它監(jiān)督以下過程:
提交新存儲并注冊新扇區(qū)
為了在 Filecoin 中注冊扇區(qū),礦工必須封裝該扇區(qū)。封裝是一個計算量很大的過程,它以證明的形式生成數(shù)據(jù)的唯一表示形式,稱為復(fù)制證明(Proof-of-Replication,簡稱PoRep)。一旦生成了證據(jù),礦工就會對其進(jìn)行壓縮,并將結(jié)果提交給區(qū)塊鏈。這是一份證明,證明該礦工確實復(fù)制了他們同意存儲的數(shù)據(jù)副本。
持續(xù)證明存儲(請參閱WindowPoST)
每個存儲礦工都必須不斷地在鏈上提交證明,以證明他們繼續(xù)存儲他們的扇區(qū)。
聲明存儲故障并從中恢復(fù)(請參閱故障)
未能提交上述特定扇區(qū)的證明將導(dǎo)致故障,礦工將受到處罰。
存儲礦工和客戶端注意事項
如上所述,存儲交易在激活和封裝之前在鏈上發(fā)布。這一點很重要,因為發(fā)布交易會將客戶的資金鎖定在鏈上的第三方托管中。因此,礦工保證,如果他們真的封存了某個扇區(qū)的數(shù)據(jù),他們將獲得報酬。
這有助于將在網(wǎng)上發(fā)布交易視為簽署合同,并將封存和激活交易視為開始做礦工承諾的工作。
從希望在 Filecoin 上存儲數(shù)據(jù)的客戶的角度來看,交易大致經(jīng)歷了以下階段:
- 為交易提供資金,客戶將資金鎖定在第三方托管中。
- 向礦工提議一筆交易。
- 檢查是否有接受交易的意向。
- 將交易數(shù)據(jù)傳輸?shù)降V工,這是通過 GraphSync 協(xié)議完成的。GraphSync 是一種用于在對等體之間同步 IPLD 圖的協(xié)議。它允許主機(jī)向遠(yuǎn)程對等點發(fā)出單個請求,以獲取遍歷遠(yuǎn)程對等點的本地 IPLD 圖上的 IPLD 選擇器的所有結(jié)果。Lotus 使用 GraphSync 協(xié)議的 ipfs/go-raphsync 實現(xiàn)。
- 檢查是否接受-確保礦工已經(jīng)接受了交易,并將其發(fā)布在鏈上。
- Seal-Deal 處于連鎖狀態(tài),Miner 目前正在封存包含該交易的一個扇區(qū)。
- 有效,交易已封存并處于有效狀態(tài)。從現(xiàn)在開始,存儲提供商/礦工應(yīng)定期證明他們將繼續(xù)存儲數(shù)據(jù)。更多細(xì)節(jié)請參見下面的時空證明部分。
從通過存儲客戶數(shù)據(jù)向客戶提供服務(wù)的礦工的角度來看,這筆交易大致經(jīng)歷了以下幾個階段:
- 驗證交易,接收交易建議書,并檢查其參數(shù)(規(guī)模、價格等)。
- 檢查鎖定的資金,確??蛻粢焰i定資金,并且可以支付交易費用。
- 等待數(shù)據(jù),從客戶接收交易數(shù)據(jù)。
- 為鏈上交易質(zhì)押抵押品。
- 在鏈上發(fā)布交易。
- 封裝扇區(qū)。
- 激活交易,從現(xiàn)在開始,存儲提供商/礦工定期提交 WindowPoST 證明,證明他們在持續(xù)存儲數(shù)據(jù)。
檢索交易流程
檢索交易與存儲交易不同,檢索交易大多是在支付渠道的推動下脫鏈進(jìn)行的。數(shù)據(jù)傳輸是計量的,客戶在傳輸數(shù)據(jù)時向礦工支付遞增的費用。創(chuàng)建支付渠道和兌換代金券是這一過程中唯一涉及到與 Filecoin 區(qū)塊鏈互動的部分。
這是整個過程:
發(fā)現(xiàn),客戶端識別擁有所需數(shù)據(jù)的礦工,并向他們請求檢索報價,每字節(jié)價格、開封價格、付款間隔。
支付渠道設(shè)置,客戶在他們和礦工之間建立支付渠道(如果還不存在的話)。
使用 Payment,Miner 進(jìn)行數(shù)據(jù)傳輸,將數(shù)據(jù)發(fā)送到客戶端,直到需要付款。當(dāng)達(dá)到特定閾值時會請求支付處理,在此之后繼續(xù)進(jìn)行數(shù)據(jù)傳輸。根據(jù)礦工在其塊存儲中是否有數(shù)據(jù),他們可能需要首先將其解封,這是一個非常重要且非即時的操作,這與關(guān)于存儲交易一節(jié)中描述的封存相反。
客戶端尚未成功檢索數(shù)據(jù)的完整副本。
時空證明
上面幾節(jié)簡要介紹了使 Filecoin 獨一無二并為用戶提供數(shù)據(jù)概率保證的許多細(xì)節(jié)。本節(jié)介紹了 Filecoin 使用的兩個證明,并解釋了它們?nèi)绾芜m應(yīng)協(xié)議以及它們解決的問題。
時空證明(PoSt)是存儲礦工可以向 Filecoin 網(wǎng)絡(luò)證明他們代表網(wǎng)絡(luò)繼續(xù)存儲某些數(shù)據(jù)的唯一副本的過程。
在如今的 Filecoin 中,時空證明有兩種不同的表現(xiàn)形式:
- Window Proof-of-Spacetime(WindowPoSt)
- Winning Proof-of-Spacetime(WinningPoSt)
Winning Proof-of-Spacetime
Winning Proof-of-Spacetime(WinningPoST)是一種獎勵存儲礦工對 Filecoin 網(wǎng)絡(luò)做出貢獻(xiàn)的機(jī)制。在每個時代之初,都會選出一小部分存儲礦工,為每個礦分配一個新的區(qū)塊。作為這樣做的一項要求,每個礦工的任務(wù)是提交特定扇區(qū)的壓縮存儲證明。每個成功創(chuàng)建區(qū)塊的當(dāng)選礦工都會獲得 FIL(區(qū)塊獎勵),并有機(jī)會向其他 Filecoin 參與者收取費用,以便在區(qū)塊中包含消息。
在必要的窗口內(nèi)未能做到這一點的存儲礦工將喪失開采區(qū)塊的機(jī)會,但不會因未能做到這一點而受到懲罰。
Window Proof-of-Spacetime
Window Proof-of-Spacetime(WindowPoST)是 Filecoin 區(qū)塊鏈審核存儲礦工承諾的機(jī)制。
每個存儲礦工都應(yīng)該維持其承諾的扇區(qū)。這些扇區(qū)包含與客戶或空扇區(qū)達(dá)成的交易。后者被稱為承諾產(chǎn)能,即礦工可以做出產(chǎn)能承諾,用任意數(shù)據(jù)填充一個扇區(qū),而不是用客戶數(shù)據(jù)。通過維護(hù)這些扇區(qū),存儲礦工可以證明他們正在代表網(wǎng)絡(luò)預(yù)留空間。
每天被分成多個窗口,當(dāng)前為 48 個窗口,持續(xù)時間為 30 分鐘(60個周期,因為1個周期等于30秒)。
每個存儲礦工的質(zhì)押扇區(qū)集被劃分為子集,每個窗口一個子集。
在給定的窗口(30分鐘)內(nèi),每個存儲礦工必須提交各自子集中每個扇區(qū)的時空證明。這需要隨時訪問每個受挑戰(zhàn)的扇區(qū),并將 ZK-snark 證明作為塊中的消息發(fā)布到 Filecoin 區(qū)塊鏈。通過這種方式,質(zhì)押存儲的每個部門在任何 24 小時內(nèi)至少審計一次,并保留一份永久的、可核實的和公開的記錄,以證明每個存儲礦工的持續(xù)承諾。
在上圖中,您可以看到樣本礦工應(yīng)該在截止日期 0(>16TB)、截止日期 1(<8TB)和截止日期 2(<8TB)中提交 WindowPoSt 證明,其大部分扇區(qū)都在截止日期 0 內(nèi)。每個礦工的截止日期是隨機(jī)的,對于這個特定的礦工,分別從 epoch1635、epoch 1695 和 epoch 1755 開始。您可以在 SpaceGap 工具上查看這些截止日期和有關(guān)礦工的更多詳細(xì)信息。
Filecoin 網(wǎng)絡(luò)期望存儲數(shù)據(jù)的持續(xù)可用性。未能提交扇區(qū)的 WindowPoSt 將導(dǎo)致故障,并且提供該扇區(qū)的存儲礦工將被大幅削減。這激勵了存儲礦工的健康行為。
故障
如果由于網(wǎng)絡(luò)連接中斷、存儲故障或惡意行為而導(dǎo)致網(wǎng)絡(luò)連接中斷、存儲故障或惡意行為,則在證明期間內(nèi) Filecoin 區(qū)塊鏈中未包含證明,則會發(fā)生故障。
當(dāng)某個扇區(qū)出現(xiàn)故障時,F(xiàn)ilecoin 網(wǎng)絡(luò)將大幅削減本應(yīng)存儲該扇區(qū)的存儲礦工;也就是說,它將評估對該礦工的處罰(從礦工提供的抵押品中支付),原因是他們未能履行其存儲承諾。
扇區(qū)故障費有三種類型:
扇區(qū)故障費,當(dāng)扇區(qū)處于故障狀態(tài)時,每天按扇區(qū)支付此費用。這筆費用的規(guī)模略高于該扇區(qū)預(yù)計每天賺取塊獎勵收入。如果一個扇區(qū)連續(xù)兩周以上仍然出現(xiàn)故障,該扇區(qū)將支付終止費,并被從鏈條狀態(tài)中移除。
扇區(qū)故障檢測費,這是在發(fā)生故障時支付的一次性費用,前提是礦工不誠實地報告故障,而未報告的故障被區(qū)塊鏈捕獲??紤]到事后檢查的概率性質(zhì),這被設(shè)定為相當(dāng)于特定扇區(qū)預(yù)期賺取的幾天的整體獎勵。
扇區(qū)終止費,扇區(qū)可以通過自動故障或礦工決定在到期日期之前終止。收取終止費,原則上是等于一個扇區(qū)迄今已賺取的收入,但要達(dá)到一定的上限,以免影響較長的使用壽命。
在 Filecoin Spec 網(wǎng)站上閱讀更多關(guān)于故障及其經(jīng)濟(jì)方面的信息
結(jié)論
本篇文章涵蓋了與在 Filecoin 上存儲和檢索數(shù)據(jù)相關(guān)的一些概念,客戶和礦工為實現(xiàn)這一目標(biāo)而參與的協(xié)議,以及在此過程中涉及的不同證明和保證。
它從客戶和礦工的角度詳細(xì)說明了存儲和檢索交易的流程,以及 Filecoin 協(xié)議將在其中一方行為不當(dāng)?shù)那闆r下執(zhí)行的懲罰措施。
最后,概述了 Filecoin 協(xié)議如何管理 Filecoin 網(wǎng)絡(luò)的一些基礎(chǔ),從而形成可靠且不可信的去中心化存儲網(wǎng)絡(luò)。
End
非常感謝您對 IPFS&Filecoin 項目的持續(xù)支持。我們很高興繼續(xù)與您一起,為人類信息建立一個強(qiáng)大的,去中心化和高效的基礎(chǔ)。
FilCloud 幫你迅速了解 IPFS 領(lǐng)域的熱點技術(shù)和應(yīng)用公眾號:filcloud
本文內(nèi)容來自于網(wǎng)絡(luò),如有侵權(quán),煩請聯(lián)系處理
本站作為開放的資訊分享平臺以供學(xué)習(xí)研究,所有觀點僅代表原作者個人觀點,絕不代表本站贊同其觀點或證實其描述。
本站提醒:投資有風(fēng)險,入市須謹(jǐn)慎,本內(nèi)容不作為投資理財建議。
文章鏈接:https://www.readblocks.com/archives/96948
你可能感興趣的文章
-
FIL幣在哪個交易所交易?Filecoin幣交易所匯總介紹一下
這篇文章主要介紹了FIL幣在哪個交易所交易?Filecoin幣交易所匯總介紹一下,F(xiàn)IL幣是IPFS上的一個代幣,驚人的回報率吸引了大批投資者想要購買FIL幣,下面小編就給大家盤點一…
2021-05-16 -
什么是Filecoin"掉算力",為什么會發(fā)生?
這篇文章主要介紹了什么是Filecoin"掉算力"為什么會發(fā)生?Filecoin挖礦相對于區(qū)塊鏈其他挖礦項目來說比較復(fù)雜。想要了解的投資者,下面跟隨小編一起來參考下詳細(xì)…
2021-05-05 -
Filecoin節(jié)點如何配置才能避免不掉算力?
這篇文章主要介紹了Filecoin節(jié)點如何配置才能避免不掉算力?掉算力是一個綜合問題,造成的原因有很多,需要仔細(xì)排查存在的問題。下面跟隨小編一起來詳細(xì)的看看Filecoin節(jié)點…
2021-05-05 -
IPFS挖礦怎么挖?IPFS挖礦靠譜嗎?IPFS挖礦收益有哪些?
這篇文章主要介紹了IPFS挖礦怎么挖?IPFS挖礦靠譜嗎?IPFS挖礦收益有哪些?Filecoin代表的是全新的、可信任的、穩(wěn)定的互聯(lián)網(wǎng)底層設(shè)施,這是區(qū)塊鏈行業(yè)的共識,是創(chuàng)造了七大全…
2021-04-28 -
分析:為什么幣圈大佬認(rèn)為五月FIL將有強(qiáng)勢行情來襲?
這篇文章主要介紹了分析:為什么幣圈大佬認(rèn)為五月FIL將有強(qiáng)勢行情來襲?通過六個方面的預(yù)測分析,5月份FIL幣的爆發(fā)會迎來新的一輪上漲,然后再看FIL的走勢圖,下面跟隨小編一…
2021-04-28 -
IPFS挖礦:Filecoin挖礦能否為你帶來財富的暴漲
這篇文章主要介紹了IPFS挖礦:Filecoin挖礦能否為你帶來財富的暴漲,現(xiàn)在Filecoin被視做未來的超級項目,挖礦也如火如荼地開始進(jìn)行著,如果從現(xiàn)在開始關(guān)注的話,幾乎算是最…
2021-04-27 -
比特幣暴跌是不是牛市結(jié)束?比特幣對Filecoin有什么影響?
比特幣的價格在過去一周時間里有所下跌,從60000美元以上的高點跌至50000美元以下。然而,根據(jù)知名加密貨幣分析師PlanB的說法,這并不一定意味著比特幣牛市已經(jīng)結(jié)束。那么…
2021-04-27 -
GAS費能否降低?通縮致使FIL幣價上漲,近看1000U
這篇文章主要介紹了GAS費能否降低?通縮致使FIL幣價上漲,近看1000U,礦工們對Filecoin的高額GAS費深惡痛絕。那什么是GAS費呢?目前消封裝算力需要消耗多少FIL的GAS費?那如…
2021-04-27 -
IPFS/FIL挖礦防爆指南,IPFS/FIL挖礦需要主要哪些坑
這篇文章主要介紹了IPFS/FIL挖礦防爆指南,IPFS/FIL挖礦需要主要哪些坑,由于filecoin其收益的穩(wěn)定性和高回報, FIL挖礦目前成為全網(wǎng)最火的區(qū)塊鏈項目,為了保護(hù)投資者不被…
2021-04-14 -
Filecoin礦機(jī)的釋放規(guī)則 Filecoin的釋放規(guī)則是怎樣的?
這篇文章主要介紹了Filecoin礦機(jī)的釋放規(guī)則 Filecoin的釋放規(guī)則是怎樣的?這個釋放機(jī)制,短期利空礦工,但是長期利好生態(tài)和經(jīng)濟(jì)模型,篩掉了一批想快速壟斷算力投機(jī)的礦工,…
2021-04-08