官方釋出 | Filecoin儲存挖礦指南

買賣虛擬貨幣

自從我們的上一套 Filecoin testnet 儲存礦工指南釋出以來,發生了很多變化!當時,我們剛剛啟動了測試網的第一個版本,然後我們的建議反映了新生網路的不確定性和實驗性。我們非常感謝所有參加(並繼續參加)測試網的人,感謝您的支援,我們已經能夠迅速使我們的協議和實現成熟。我們現在處於測試網的第二階段,並且正在穩步推進主網啟動。

在這篇文章中,我們提供了 Filecoin 儲存挖掘的最新指南,並討論了不斷增長的 Filecoin 社羣成員及最近宣佈的一些激勵措施和機會。

請注意,Filecoin 仍在完善中。測試網提供的來自實驗的新見解正在積極地納入最終規範中。因此,在主網啟動之前,重要的網路引數仍然會發生變化。我們強烈鼓勵礦工在投入大量資金之前,購買小規模的硬體以進行測試,試驗和基準測試。

參與 Filecoin 網路

目前,節點可以在 Filecoin 網路中扮演兩個主要角色:儲存和檢索。我們預計,礦工將尋求專門從事特定角色。

儲存市場

在 Filecoin 網路中,節點具有與客戶端簽約的能力,可以在約定的時間段記憶體儲其資料,以換取 Filecoin。

為 Filecoin 網路提供儲存的節點稱為儲存礦工。這些節點定期被授予使用它們自己建立的塊擴充套件 Filecoin 區塊鏈的能力。當它們建立一個新區塊時,儲存礦工會獲得新生成的 Filecoin 獎勵,並可以透過交易費用向試圖在區塊中包含訊息的其他節點徵收費用。

檢索市場

節點還可以參與檢索合同,為客戶提供指定的檔案,以換取 Filecoin。這激勵具有高吞吐量、高頻寬連線的位置良好的節點參與網路,促進檔案的廣泛和快速分發尤其是那些要求很高的檔案。

其他角色

目前正在開發許多其他角色(例如,促進網路自我修復的“修復”節點),但尚未在任何實現中最終確定或支援。但是,如果沒有這些建議的改進,網路也能充分運作。

儲存開採解釋

儲存礦工的作用是代表 Filecoin 網路儲存檔案。儲存礦工必須以加密方式證明他們兌現了儲存這些檔案的承諾,這是透過複製證明(PoRep)和時空證明(PoSt)機制實現的。向 Filecoin 網路承諾儲存需要 Filecoin。這些被用作擔保,以確儲存儲礦工履行其合同義務。

儲存資料

在Filecoin網路中,資料儲存在固定大小的扇區中。通常,儲存礦工為客戶儲存的資料填充這些部門,客戶透過交易在特定時間段內與儲存礦工服務簽約。但是,儲存礦工並沒有被迫進行交易。如果儲存礦工覺得現有的交易方案都沒有吸引力,他們也可以選擇做出容量承諾,用任意資料填充部門。這使他們可以證明他們正在代表網路保留空間。如果需要,為承擔能力承諾而建立的部門可以在以後“升級”,為未來的交易提供合同儲備。

複製證明

一旦一個扇區已被填充,PoRep 就會看到儲存礦工對扇區進行密封,密封是一個計算密集型的過程,會導致資料的唯一表示(原始表示可以透過開啟來重新構建)。一旦資料被密封,儲存礦工:生成證明;對證明執行 SNARK 進行壓縮;最後,將壓縮結果提交給區塊鏈,作為儲存承諾的證明。透過此過程為網路保留的儲存稱為抵押儲存。

時空證明

PoRep 完成後,儲存礦工必須不斷證明他們仍在儲存他們承諾儲存的資料。這是透過 PoSt 完成的,PoSt 是向儲存礦工發出加密挑戰的過程,只有透過直接諮詢一個密封的扇區才能正確回答。儲存礦工必須在嚴格的時間限制內應對這一挑戰;密封的計算難度確保了儲存礦工必須保持對密封部門的隨時訪問和完整性。

在 Filecoin 中,PoSt 面臨兩個不同的挑戰:WindowPoSt 和 WinningPoSt。

WindowPoSt

WindowPoSt 是一種機制,可用來稽覈儲存礦工所做承諾的機制。它將每個 24 小時週期分成為一系列的視窗。相應地,每個儲存礦工的保證扇區集都被劃分為子集,每個視窗一個子集。在給定的視窗內,每個儲存礦工必須為其各自子集中的每個扇區提交 PoSt。這要求可以立即訪問每個面臨挑戰的部門,並將導致將 SNARK 壓縮的證據作為訊息以塊形式釋出到區塊鏈。這樣,在每個 24 小時內至少對一次保證儲存的每個部門進行一次稽覈,並保留一個永久,可驗證的公共記錄,以證明每個儲存礦工的持續承諾。

Filecoin 網路期望儲存檔案的持續可用性。未按規定提交 WindowPoSt 的部門將導致故障,儲存礦工提供的部門將被削減。也就是說,他們的抵押品的一部分將被沒收,他們的儲存能力(見下面的儲存能力)將被降低。在被認為完全放棄儲存承諾之前,儲存礦工將有有限的時間從故障中恢復。如果需要,儲存礦工也將具有先發制人的過錯的能力,這將減少處罰,但仍必須在合理的時間內解決。

WinningPoSt

WinningPoSt 是一種機制,透過這種機制可以獎勵儲存礦工的貢獻。在 Filecoin網路中,時間被離散成一系列的 epoch,區塊鏈的高度對應於經過的 epoch 的數量。在每個曆元的開始,都會選出一小部分的礦工來開採新的塊,(Filecoin利用tipset,其允許在相同的高度挖掘多個塊)。每個成功建立區塊的當選礦工都將獲得 Filecoin,並有機會向其他節點收取費用以在區塊中包含訊息。

儲存礦工的當選概率與其儲存能力相對應。在一個類似於底層 WindowPoSt 的過程中,儲存礦工的任務是在 epoch 結束前提交一個特定扇區的壓縮儲存證明。未能在必要的視窗中完成 WinningPoSt 的儲存礦工將喪失開採區塊的機會,但不會因未能這樣做而受到處罰。

儲存能力

Filecoin 儲存礦工的能力與選擇儲存礦工開採區塊的可能性相對應,與他們代表網路密封的儲存量大致成比例。為了進一步鼓勵儲存“有用的”資料而不是簡單的容量承諾,儲存礦工有額外的機會競爭經過驗證的客戶提供的特殊交易。此類客戶在提供涉及儲存有意義資料的交易意圖方面獲得了認證,並且儲存礦工為這些交易賺取的權力將透過乘數得到增強。考慮到該乘數後,給定儲存礦工擁有的總電量稱為質量調整後的 電量。

Filecoin 實現

Filecoin 是一個開放的標準與眾多的實現的分散式儲存網路。

在撰寫本文時,最成熟的實現(應該用於訪問當前測試網的實現)是基於Go的Lotus。Lotus客戶端能夠在Linux和macOS上執行;可透過其文件獲得有關安裝和使用Lotus的詳細說明。

當前至少有三個其他實現正在進行積極的開發。其中包括 go-filecoin (另一種基於Go的實現), forest(由ChainSafe開發的Rust實現)和fuhon(由Soramitsu開發 的C ++實現)。

硬體注意事項

Filecoin 網路的參與者將需要確保他們的系統有足夠的裝備來履行他們打算擔任的角色。

在不進行挖礦的情況下執行Lotus客戶端

如果您不想挖礦,但仍然想執行 Lotus 客戶端,以保留錢包或與網路連線,具有 2-4 個 CPU 核心,8GiB RAM 和足夠用於 Filecoin 的儲存的系統區塊鏈應該足夠了(當前的測試鏈每週增長約12GiB;正在進行減少該儲存需求的改進)。

儲存挖礦

值得注意的是,在其當前狀態下,Filecoin 儲存挖掘需要相當強大的硬體來滿足儲存和證明的要求。這些需求主要是由 PoRep 和 PoSt 機制施加的設計約束以及需要在可訪問性、計算可行性和加密安全性之間取得平衡所驅動的。

Filecoin 儲存採礦不是工作證明採礦,密封儲存是在網路上獲得存力的唯一方法。但快速和高效的硬體需要在可接受的時間範圍內計算必要的證明。協議實驗室目前正在研究降低這些需求的方法(例如,透過在證明機制本身引入效率,或者透過外包SNARK計算來消除對昂貴gpu的需求)。然而,與此同時,在對硬體進行大規模投資之前,未來的儲存礦商應該仔細考慮和試驗其系統的組成,以確保它們能夠實現所需的效能。

示例礦機和基準

最佳的系統組成將在很大程度上取決於儲存礦工的運營模式,包括資本支出和運營成本;因此,Protocol Labs 無法提供任何具體建議。但是,我們已經發布了一些自己的設計,包括目前適用於測試和小規模採礦的機器的概要。

我們希望儲存礦工能夠根據自己的需求調整其配置;可以使用替代配置在測試網上進行挖礦,並且我們希望這些配置中的許多配置都將超過我們自己構建的效率。我們鼓勵進行實驗,並要求感興趣的社羣成員在 GitHub 上分享自己的基準評分。

一般硬體問題

雖然我們無法提供具體建議,但可以提供一些一般性指導方針。

CPU:根據經驗,具有高時脈頻率的多核 CPU 將加速密封過程,使儲存礦工可以更快地將儲存到網路上。Protocol Labs 自己的測試表明,具有 SHA 擴充套件功能的現代 AMD 處理器具有 比其他處理器更大的優勢。

GPU:必須有強大的 GPU,才能在所需的時間限制內完成 SNARK 計算。Lotus 當前被設計為支援 NVIDIA 製造的晶片。我們預計將來還會有其他製造商的支援卡。我們的基準測試可幫助您深入瞭解成功的晶片。

RAM:當前的Filecoin網路僅支援密封 32GiB 和 64GiB 扇區。在這些較大的扇區上執行必要的計算需要相應的更多 RAM。建議採礦系統至少配備 128GiB。

儲存:選擇合適的儲存解決方案涉及很多考慮因素,也許最重要的是採礦作業所採用的特定收益模型。儲存礦工目前需要保證原始儲存量為 1TiB(或質量調整後的等同量;對於主網,它將增加到100TiB),以便開採區塊,但是超出此要求的因素還有很多,他們可能會覺得有用考慮。

  • 首先,也是最重要的一點是,儲存礦工應該牢記資料丟失的嚴厲處罰;即使是一個翻轉的資料位,也可能導致嚴重的懲罰。因此,儲存礦工可能希望考慮開銷來實現資料冗餘。

  • 對於試圖加入檢索市場的儲存礦工來說,考慮合併其他儲存以準備提供密封資料的“熱”複製也可能是明智的。儘管當然可以開啟一個扇區以恢復原始資料,但是支援此用例的 Filecoin 實現將消除這種計算負擔(這是Lotus當前正在開發的功能)。

  • 要考慮的另一個考慮因素是 Filecoin 網路對高可用性的期望。雖然理論上,儲存礦工應該能夠與大多數商品的硬碟,固態硬碟,或其他合適的,非冷儲存解決方案,在進行 24/7 作業時,並不是所有的儲存方案都能獲得最佳效果。

  • 當前,儲存礦工還需要足夠的空間來儲存區塊鏈本身。減少磁碟上區塊鏈的佔用空間是 Lotus 積極開發的一項功能。Filecoin 的實現可能還需要額外的磁碟儲存,相當於承諾儲存的一小部分,用於記帳。

  • 最後,協議實驗室在測試中發現,將 NVMe 儲存用作交換空間可以在具有較少 RAM(128GiB)數量的系統中用作補充。否則,儲存礦工在某些操作期間可能會遇到記憶體不足的問題(尤其是密封需要大量工作記憶體)。

網路:如果使用分散式 Lotus Seal 工作人員(請參閱下面的“ 高階挖礦注意事項”),則建議使用高效能網路(建議使用10GbE+網絡卡和交換機)。使用網路附加儲存時,還建議使用高效能網路。

先進的採礦注意事項

如前所述,Filecoin 儲存挖礦主要由與 PoRep 和 PoSt 機制相關的擔憂所主導。PoRep 本身是由幾個階段和 Lotus 實現,Filecoin 的便於這些階段不同的機器代表團使用效率最大化 seal 工人。Protocol Labs 開發了一個示例架構,旨在利用這些功能進行大規模挖礦。在這裡,我們分解了設計類似系統時要考慮的不同瓶頸。

密封預交付階段1:在此階段,進行 PoRep SDR 編碼。此階段受 CPU 限制,並且是單執行緒的(根據設計,它不適合並行化)。這一階段預計需要幾個小時的時間,確切的時間取決於要密封的扇形的大小,當然還取決於進行密封的機器的規格。如前所述,Protocol Labs(及其他)發現,具有 SHA 擴充套件的 AMD 處理器在很大程度上加快了此過程。使用具有更高時鐘率的cpu也將提高效能。

密封預交付階段2:在此階段,,Merkle 樹的生成使用 Poseidon 雜湊演算法。此過程主要是與 GPU 有關的,可以將 CPU 用作替代方案,但應該預期速度會慢得多。使用 GPU 時,此階段預計需要 45 分鐘到一個小時。

密封提交階段1:這是執行生成證明所必需的準備工作的中間階段。它受 CPU 限制,通常在數十秒內完成。

密封提交階段2:最後,該密封階段涉及建立 SNARK,該 SNARK 用於在將必需的證明傳輸到區塊鏈之前對其進行壓縮。這是一個 GPU 密集型過程,預計需要 20 到 30 分鐘才能完成。

協議實驗室發現,將預提交階段 2、提交階段 1 和提交階段 2 並置在同一臺計算機上是非常有效的,利用高密度計算機進行預提交階段 1。但是,預提交階段 1 和預提交階段 2 之間有一個很大的檔案傳輸;在網路訪問速度較慢或使用硬碟而不是固態驅動器的計算機上,這可能會超過其他方面的效能提升。在這種情況下,讓所有階段都出現在同一臺機器上可能會更有效率。

PoSt 主要受 GPU 約束,但可以利用具有許多核心的 CPU 來加速過程。例如,WindowPoSt 當前必須在 30 分鐘的視窗內進行;24 核 CPU 和 8 核 CPU 之間的差異可能是在以適當的餘量清除該視窗與在狹窄的時間範圍內進行清除之間的差異。WinningPoSt 是一種強度較低的計算,必須在 Filecoin 時期的較小視窗(當前為25秒)內完成。

加入測試網第二階段

我們的測試網是 Filecoin 網路正式啟動的初步階段,我們目前處於測試網第二階段,預計執行到 2020 年第三季度主網啟動為止。

在測試網階段,儲存礦工可以從我們的水龍頭中檢索 filecoin,作為抵押儲存的必要抵押。

請注意,測試網的 filecoin 沒有任何價值,官方檔案幣僅在主網啟動後才可用。

加速 Filecoin 生態系統

隨著主網的啟動,社羣成員可以使用越來越多的機會參與 Filecoin。

SpaceRace

為了準備主網,協議實驗室最近宣佈了一項激勵計劃 SpaceRace,以對測試網進行壓力測試。參賽者將有機會透過使用盡可能多的儲存空間,競逐主網 filecoin。

HackFS

HackFS 是一個為期 30 天的線上駭客馬拉松,旨在為去中心化的網路建立基礎。開發人員將構建 dapp,遊戲,開發工具,DeFi 整合以及其他利用分散儲存的技巧。HackFS 將由 ETHGlobal 和協議實驗室主辦 ,並將擁有所有駭客馬拉松的主要內容:研討會,指導,鼓舞人心的演講,AMA 和獎品!

Filecoin Discover

Filecoin Discover 是一項最近宣佈的計劃,旨在為 Filecoin 注入人類最有價值的文化和科學資料。購買 Discover 計劃的個人將獲得為期一年的質量調整後的儲存交易,Discover 充當經過驗證的客戶。

Filecoin開發資助

我們透過 Filecoin 開發贈款贊助貢獻者,繼續促進Filecoin生態系統的發展 。第 4 輪贈款提案的截止日期為 7 月 1 日,作為優先考慮,但我們將繼續評估在最後期限後提交的提案。第 5 輪提案將於 10 月 1 日到期。

總結

區塊鏈是複雜的軟體,具有很多可移動的區塊,從頭開始構建成功的區塊鏈是一項艱鉅的任務。如果沒有世界各地社羣成員的支援,Filecoin 不會是今天的成就,我們對幫助 Filecoin 走到這一步的每一個人都深表感謝!再一次,感謝您的持續支援,參與和耐心,我們進入最後的日子,在主網路上線之前。我們非常高興地歡迎新的社羣成員(礦工,開發人員和使用者)加入,並希望這個指南可以作為希望加入我們的任何人的起點,因為我們著手進行此步驟很棒的旅程!

免責聲明:

  1. 本文版權歸原作者所有,僅代表作者本人觀點,不代表鏈報觀點或立場。
  2. 如發現文章、圖片等侵權行爲,侵權責任將由作者本人承擔。
  3. 鏈報僅提供相關項目信息,不構成任何投資建議

推荐阅读

;