BTC
ETH
HTX
SOL
BNB
查看行情
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt

Filecoin Spec系列(一)

星际视界IPFSNEWS
特邀专栏作者
本文約1650字,閱讀全文需要約3分鐘
Filecoin是基於區塊鏈機制的分佈式存儲網絡。
AI總結
展開
Filecoin是基於區塊鏈機制的分佈式存儲網絡。

Filecoin是基於區塊鏈機制的分佈式存儲網絡。 Filecoin礦工可以為提供網絡存儲容量,通過定期生成證明(礦工正在提供指定容量的加密證明)來獲得Filecoin加密貨幣。此外,Filecoin使網絡參與各方能夠通過Filecoin區塊鏈上共享賬本中記錄的交易來交換FIL貨幣。

知識前瞻

Filecoin並沒有使用Bitcoin的工作量證明(POW)來維持區塊鏈的共識,而是使用存儲證明本身:礦工在共識協議中的能力與其所提供的存儲量成正比。

Filecoin區塊鏈不僅維護FIL交易和帳戶的分類帳,還會實現Filecoin VM,這是一種複制狀態機,可執行網絡參與者之間各種加密合約和市場規則。這些合同包括存儲交易,客戶向礦工支付FIL貨幣,以換取存儲客戶請求的特定文件數據。

隨著時間的推移,通過Filecoin VM的分佈式機構,存儲交易和鏈上記錄的其他合同機制將繼續處理,而無需請求數據存儲的客戶端亦可進行進一步的交互。

協議系統中涉及的重要概念

1、Data structures(數據結構)是語義標記數據成員(例如,結構,接口或類型)的集合;

2、Functions(函數)是不依賴於外部狀態的計算過程(數學函數或不引用全局變量的編程語言函數)

3、Components(組件)是功能集,旨在在實現結構中表示為單個軟件單元。根據語言和特定組件的選擇,這可能對應於單個軟件模塊,運行某個主循環的線程或進程,磁盤支持的數據庫或多種其他設計選擇。

4、API是用於將消息傳遞到組件的接口。例如對礦工節點的存儲礦工組件的請求在存儲市場中存儲文件就需要執行一系列API請求。

5、Nodes (節點)是與協議交互的完整軟件和硬件系統。節點可能會不斷運行上述組件中的幾個,參與多個子系統,並在本地和或通過網絡公開API,具體取決於節點配置。

6、Subsystems (子系統)是整個Filecoin協議的概念劃分,無論是按照完整的協議(例如存儲市場或檢索市場),還是就功能(比如VM- 虛擬機)而言。它們不一定對應於任何特定的節點或軟件組件。

7、Actors是體現在Filecoin VM狀態中的虛擬實體。協議參與者類似於智能合約的參與者。一個參與者俱有FIL貨幣餘額,並且可以通過VM的操作與其他參與者進行交互,但不一定對應於任何特定的節點或軟件組件。

Filecoin VM

Filecoin面向用戶的大部分功能(付款,存儲市場,power table等)都通過Filecoin虛擬機(Filecoin VM)進行管理。網絡生成一系列區塊,並同意正確的區塊鏈。每個塊包含一系列的狀態轉換messages,以及global state應用這些轉換後的當前檢查點messages。

在global state這裡由一組的actors,每一個都有自己的私人state。

一個actor是Filecoin的等同於以太坊智能合約的文件,本質上是Filecoin網絡中的一個“對象”,具有狀態和一組可用於與其交互的方法。每個參與者都有一個Filecoin餘額,一個state指針,一個code CID(標註參與者屬性)以及一個nonce跟踪該參與者發送的消息數量的CID 。

在上調用方法有兩種方法actor。

首先,要以系統的外部參與者(也就是使用Filecoin的普通用戶)的方式調用方法,用戶必須向message網絡發送簽名,並向包括對應的礦工支付費用message。消息上的簽名必須與具有足夠Filecoin的帳戶關聯的密鑰相匹配,用來支付消息的執行費用。這裡的費用等同於比特幣和以太坊中的交易費用,在這裡它與處理消息的工作成比例(比特幣為每字節消息定價,以太坊使用“ gas”的概念。我們也使用“ gas” ) 。

其次,在actor調用一個參與者的方法時,可以在另一個參與者上調用一個方法。但是,這種情況唯一可能發生的原因是外部用戶消息調用了某個參與者(說明:用戶調用的參與者可能會先調用另一個參與者,然後再調用另一個參與者,執行層可以執行的層次盡可能多爭取)。

Filecoin
歡迎加入Odaily官方社群