Filecoin:一種去中心化的存儲網(wǎng)絡

深度研究可以分析去中心化存儲項目一定會存在的問題尼夺。

FileCoin是一種協(xié)議代幣康二。

  • 區(qū)塊被存儲數(shù)據(jù)的礦工所挖
  • 區(qū)塊鏈運行在“時空證明”的機制上
  • FileCoin不依賴于單個存儲服務商
  • 提供存儲服務和數(shù)據(jù)檢索服務

FileCoin的使用方式

  • 用戶為數(shù)據(jù)存儲和檢索支付代幣
  • 存儲礦工通過提供存儲空間賺取代幣
  • 檢索礦工通過提供數(shù)據(jù)服務賺取代幣

FileCoin協(xié)議的四個組件

  • 去中心化存儲網(wǎng)絡
  • 新型的存儲證明
  • 可驗證市場
  • 有效的工作量證明

協(xié)議概述

  • 構(gòu)建于區(qū)塊鏈擁有原生代幣的去中心化存儲網(wǎng)絡
    網(wǎng)絡的構(gòu)建需要有協(xié)議的存在莫换,這樣才能完成數(shù)據(jù)的傳輸瘦馍。中心化存儲模式中洞豁,需要依賴HTTP協(xié)議

  • 通過存儲市場和檢索市場來完成客戶請求

現(xiàn)在所有的人都在想著挖IPFS的代幣來賺錢犀变,可是誰會來存儲數(shù)據(jù)呢?這有點像幣乎的羊毛黨罗标。

  • 時空證明和復制證明來確保數(shù)據(jù)被正確存儲

  • 礦工參與到新區(qū)塊的鍛造庸队,礦工對區(qū)塊鏈的影響與他們在當前網(wǎng)絡中的存儲使用量成正比

去中心化存儲網(wǎng)絡

  • 多個獨立存儲提供商提供存儲
  • 自我協(xié)調(diào)的提供存儲數(shù)據(jù)和檢索數(shù)據(jù)服務
  • 擁有不同的協(xié)調(diào)策略

DSN方案包括:PUT,GET,MANAGE。DSN方案(Π)必須保證數(shù)據(jù)的完整性和可恢復性闯割。

管理故障定義為管理協(xié)議的參與者引起的拜占庭故障彻消。一個DSN方案依賴于它的基礎管理協(xié)議的故障容錯。管理故障會影響系統(tǒng)的活躍度和安全性宙拉。

DSN的兩個屬性:數(shù)據(jù)完整性和可恢復性宾尚。

數(shù)據(jù)完整性:在存儲數(shù)據(jù)之后,你將獲得一個key鼓黔,通過key可以提取你的數(shù)據(jù)央勒,在提取的過程中,其他人不可能實現(xiàn)對數(shù)據(jù)的篡改澳化。

可恢復性:可以通過key恢復你存儲的數(shù)據(jù)崔步。

DSN的其他屬性:公開可驗證性、可審查性缎谷、激勵兼容性井濒。

  • 公開可驗證性:系統(tǒng)中會有專門負責驗證數(shù)據(jù)有效性的驗證者,這些驗證者會從數(shù)據(jù)存儲服務商手中獲得一份證明列林,通過這份證明可以判斷數(shù)據(jù)存儲服務商存儲的數(shù)據(jù)是否完整瑞你、有效。

  • 可審查性:審查是否在某個時間存儲過數(shù)據(jù)希痴。

  • 激勵兼容性:有效完成存儲和檢索服務的節(jié)點可以獲得獎勵者甲,對系統(tǒng)有害的節(jié)點將受到懲罰。

復制證明與時空證明砌创。

通過復制證明和時空證明虏缸,可以讓存儲數(shù)據(jù)的人相信自己的數(shù)據(jù)已經(jīng)被存儲。

為什么需要設置復制證明和時空證明嫩实?

在數(shù)據(jù)存儲中刽辙,有一種方案叫存儲證明[POS],可以讓存儲數(shù)據(jù)的客戶做兩件事情:

  • 隨時驗證自己的數(shù)據(jù)是否依然被存儲
  • 隨時驗證自己數(shù)據(jù)的完整性

但是上面的方案無法避免以下三種攻擊:

女巫攻擊:作惡礦工可能通過創(chuàng)建多個女巫身份假裝物理存儲很多副本(從中獲取獎勵),但實際上只存儲一次甲献。

外包攻擊:依賴于可以快速從其他存儲提供商獲取數(shù)據(jù)宰缤,作惡礦工可能承諾能存儲比他們實際物理存儲容量更大的數(shù)據(jù)。

代攻擊:作惡礦工可能宣稱要存儲大量的數(shù)據(jù)晃洒,相反的他們使用小程序有效地生成請求慨灭。如果這個小程序小于所宣稱要存儲的數(shù)據(jù),則作惡礦工在Filecoin獲取區(qū)塊獎勵的可能性增加了球及,因為這是和礦工當前使用量成正比的缘挑。

代攻擊就是為了獲得更多的獎勵,欺騙系統(tǒng)說自己存儲了大量數(shù)據(jù)在系統(tǒng)中桶略,但實際上存儲的數(shù)據(jù)要少很多语淘。例如攻擊者告訴系統(tǒng)存儲了100G的數(shù)據(jù)在系統(tǒng)中,但是實際只存儲了1G數(shù)據(jù)际歼,這樣挖礦就可以用很少的存儲空間惶翻,獲得更多的獎勵。

復制證明重點在于存儲副本鹅心,時空證明重點在于證明是否有存儲數(shù)據(jù)吕粗。

FileCoin DSN的構(gòu)建。

環(huán)境:參與者+網(wǎng)絡N+賬本+市場

參與者分為:客戶+存儲礦工+檢索礦工

  • 客戶在網(wǎng)絡中進行數(shù)據(jù)存儲和檢索時旭愧,需要向礦工支付費用颅筋。
  • 存儲礦工為網(wǎng)絡提供數(shù)據(jù)存儲宙暇。存儲礦工通過“時空證明”來證明已經(jīng)存儲好了數(shù)據(jù)。作為存儲礦工需要提交抵押品议泵,當存儲礦工作出有害系統(tǒng)的事情時占贫,抵押品將會被沒收或者部分沒收。
  • 檢索礦工為網(wǎng)絡提供數(shù)據(jù)檢索服務先口。檢索礦工可以直接從客戶或者從檢索市場賺取收益型奥。

網(wǎng)絡N:運行FileCoin全節(jié)點的用戶細化為一個抽象實體:網(wǎng)絡。這些網(wǎng)絡將作為運行管理協(xié)議的中介碉京。這些眾多的網(wǎng)絡整體被稱作網(wǎng)絡N厢汹。

賬本:FileCoin的協(xié)議適用于基于賬本的貨幣。

市場:存儲市場和檢索市場谐宙。這是兩個去中心化的交易市場烫葬,當客戶提交的訂單與礦工提交的訂單相匹配的時候,網(wǎng)絡中的管理協(xié)議將幫助雙方自動完成交易凡蜻。

數(shù)據(jù)結(jié)構(gòu):碎片+扇區(qū)+分配表+訂單+訂單簿+抵押

  • 碎片:假設你是客戶厘灼,你在網(wǎng)絡中存儲的數(shù)據(jù)將會被分成不同的片段。這些片段在系統(tǒng)中被稱作碎片咽瓷。
  • 扇區(qū):礦工向系統(tǒng)提供的磁盤空間设凹。
  • 分配表:可以跟蹤碎片和其分配的扇區(qū)。你的數(shù)據(jù)是在哪里存儲的茅姜,可以通過分配表快速的找到闪朱,這就像是一個關(guān)系映射表。
  • 訂單:客戶為了存儲和檢索數(shù)據(jù)提交的請求钻洒,礦工們?yōu)榱颂峁┓仗峤坏膱髢r請求奋姿。
  • 訂單簿:訂單的集合。
  • 抵押:為了保證服務可靠可信素标,礦工必須在系統(tǒng)中提供抵押品称诗。

協(xié)議:客戶生命周期+挖礦周期+網(wǎng)絡周期

  • 客戶生命周期:存儲數(shù)據(jù)+檢索數(shù)據(jù)。存儲數(shù)據(jù)時头遭,客戶可以選擇存儲數(shù)據(jù)的物理副本的數(shù)量寓免,副本越多存儲的安全性越高。檢索數(shù)據(jù)時计维,當檢索市場有滿足要求的訂單袜香,客戶會收到來自礦工的碎片,之后雙方進行簽名鲫惶,提交到區(qū)塊鏈蜈首,進行交易確認。
  • 挖礦周期

存儲礦工

抵押->接收訂單->密封->證明

檢索礦工

收到訂單->發(fā)送

  • 網(wǎng)絡周期:分配
    當出現(xiàn)問題時,系統(tǒng)會嘗試修復或者重新分配欢策。當?shù)V工的證明丟失或者失效將會扣除抵押品吆寨;大量證明丟失或失效,會認定訂單失效踩寇,網(wǎng)絡會重新創(chuàng)建訂單啄清;如果接受該訂單的所有數(shù)據(jù)存儲礦工都出現(xiàn)錯誤,則認定數(shù)據(jù)丟失姑荷,訂單取消,客戶將收到退款缩擂。

擔保和要求

完整性:客戶存儲完數(shù)據(jù)之后鼠冕,會獲得一個哈希值,我們可以把它看作是一把鑰匙胯盯,通過這把鑰匙我們可以找到自己的數(shù)據(jù)懈费,當從礦工那里收到返回來的數(shù)據(jù)時,也可以通過這把鑰匙來驗證數(shù)據(jù)的完整性博脑。

可恢復性:當你在FileCoin中存儲數(shù)據(jù)時憎乙,你的數(shù)據(jù)將會擁有多個副本。如果有礦工下線或者消失叉趣,會有部分副本丟失泞边,但是依然在網(wǎng)絡中的副本,將會保證你的數(shù)據(jù)依然可以完整的恢復疗杉。

公開可驗證和可審核性:當需要審核存儲的數(shù)據(jù)是否依然有效時阵谚,你可以單獨的完成審核過程,并不需要下載你的數(shù)據(jù)烟具。審核依賴的是礦工提交的存儲證明梢什,這些證明存儲在區(qū)塊鏈中,所有操作痕跡都公開可查朝聋。

激勵兼容性:礦工按照協(xié)議完成存儲和檢索將會得到獎勵嗡午,如果做出對系統(tǒng)有害的事情,將會受到懲罰冀痕。

保密性:當你存儲的數(shù)據(jù)需要實現(xiàn)隱私時荔睹,必須自己在存儲之前進行加密。

FileCoin的存儲和檢索市場

  • 驗證市場

為什么需要驗證市場言蛇?

去中心化的參與者必須能夠在買家和賣家間驗證交易应媚。去中心化模式下,沒有人來管理交易市場猜极,訂單的匹配中姜、結(jié)算、有效性,通過驗證市場可以自動完成丢胚,并得到保障翩瓜。

  • 存儲市場

需求

鏈式訂單簿:訂單會被添加到FileCoin區(qū)塊鏈。這樣做有兩個好處:
1.存儲礦工的訂單全部公開携龟,最便宜的訂單會被更多的人知道兔跌,客戶可以做出最好的選擇;
2.客戶訂單提交給網(wǎng)絡峡蟋,當客戶的要求被滿足的時候坟桅,市場會根據(jù)新的交易價格,做出新的調(diào)整蕊蝗。

參與者投入資源:存儲礦工需要提供與其上報的存儲容量相對應的抵押品仅乓,在礦工做出違反系統(tǒng)規(guī)則的時候,會扣除抵押品作為懲罰蓬戚】溟梗客戶需要提前充值一定數(shù)量的資金,從而保證在結(jié)算時的資金子漩。

故障自處理:訂單會在確認礦工提供的證明有效的情況下豫喧,完成訂單的結(jié)算。

數(shù)據(jù)結(jié)構(gòu)

put訂單:有三種類型的訂單:存儲礦工創(chuàng)建詢價訂單幢泼,客戶創(chuàng)建出價訂單紧显,當雙發(fā)達成一致時,共同創(chuàng)建交易訂單缕棵。

put訂單簿:存儲市場的訂單簿是目前有效和開放的詢價鸟妙、出價、交易訂單的集合挥吵。

存儲市場協(xié)議

訂單匹配:客戶和存儲礦工提交交易訂單到訂單簿重父,完成匹配之后,客戶將數(shù)據(jù)碎片發(fā)送給礦工忽匈,雙方完成交易之后房午,將交易簽名并提交到訂單簿。

結(jié)算:存儲礦工的扇區(qū)用完之后丹允,要進行密封郭厌,后續(xù)會不間斷的向網(wǎng)絡提交存儲證明,證明存儲的數(shù)據(jù)依然存在并有效雕蔽,網(wǎng)絡會根據(jù)存儲證明進行驗證或者故障修復折柠。

檢索市場

檢索市場允許客戶端請求檢索特定的數(shù)據(jù),由檢索礦工提供這個服務批狐。

鏈下訂單簿:客戶為了檢索所提供的訂單扇售,會采用非區(qū)塊鏈的方式來實現(xiàn)前塔,因為區(qū)塊鏈的使用會導致檢索瓶頸的出現(xiàn)。

無信任方檢索:在沒有信任的環(huán)境中承冰,客戶想要完成數(shù)據(jù)的檢索华弓,礦工想要收到付款,是不太可能的困乒,因為可能出現(xiàn)欺詐行為寂屏。為了解決這個問題,當客戶檢索到自己想要的數(shù)據(jù)時娜搂,礦工會以碎片的形式依次將完整的數(shù)據(jù)發(fā)送給客戶迁霎,客戶會在收到碎片的過程中逐步的向礦工付款,當中途發(fā)生意外時百宇,交易將會被終止考廉。

支付通道:檢索礦工只有在收到付款的時候,才開始向客戶發(fā)送數(shù)據(jù)恳谎,但是區(qū)塊鏈上的支付會產(chǎn)生瓶頸芝此,所以快速有效的鏈下支付是唯一的選擇憋肖。當出現(xiàn)糾紛時因痛,可能會用到區(qū)塊鏈。

數(shù)據(jù)結(jié)構(gòu)

獲取訂單:客戶端創(chuàng)建的出價單岸更,檢索礦工創(chuàng)建的詢價單鸵膏,存儲礦工和客戶端達成的交易訂單。

獲取訂單簿:是有效的和公開出價訂單怎炊、詢價訂單谭企、交易訂單的集合。每個用戶的訂單視圖是不一樣的评肆,因為每個用戶只關(guān)心自己想要的數(shù)據(jù)债查。

檢索市場協(xié)議:訂單匹配+結(jié)算

訂單匹配:客戶端和檢索礦工通過廣播的方式,將訂單提交給訂單簿瓜挽,

結(jié)算:檢索礦工在向客戶逐步發(fā)送碎片的時候盹廷,每一個碎片的成功交付,檢索礦工都會收到一個收據(jù)久橙,礦工向區(qū)塊鏈出示收據(jù)俄占,從而獲得獎勵。

有用工作共識

常見的共識機制淆衷,例如pow缸榄,存在著大量的能量浪費,所做的工作并不能重復使用祝拯。有用的工作共識旨在解決計算浪費甚带,將之前所做工作進行重復使用。

FileCoin共識

  • 公開:網(wǎng)絡中當前正在使用的存儲總量是公開的。

  • 可公開驗證:每個存儲任務欲低,礦工都需要生成“時空證明”辕宏,從而可以驗證其是否可以持續(xù)提供服務。

  • 變量:礦工可以增加存儲空間或者補充的抵押品來增加自己的功率砾莱。

功率會計和時空證明

  • 全節(jié)點驗證:全節(jié)點可以驗證礦工生成的每一個時空證明瑞筐。

  • 簡單存儲驗證

使用功率達成共識

預計將會在現(xiàn)有的權(quán)益證明共識機制上進行擴展,讓FileCoin的共識策略更加的多樣化腊瑟,權(quán)益證明共識機制中的權(quán)益將會替換為分配的存儲聚假。FileCoin中的共識機制暫時可以叫做預期共識,每個礦工在選舉中獲勝的概率和他們提供的存儲成正比例闰非。

FileCoin智能合約

FileCoin中增加了智能合約來支持特定的操作膘格。

與其他系統(tǒng)集成

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市财松,隨后出現(xiàn)的幾起案子瘪贱,更是在濱河造成了極大的恐慌,老刑警劉巖辆毡,帶你破解...
    沈念sama閱讀 211,265評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件菜秦,死亡現(xiàn)場離奇詭異,居然都是意外死亡舶掖,警方通過查閱死者的電腦和手機球昨,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,078評論 2 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來眨攘,“玉大人主慰,你說我怎么就攤上這事■晔郏” “怎么了共螺?”我有些...
    開封第一講書人閱讀 156,852評論 0 347
  • 文/不壞的土叔 我叫張陵,是天一觀的道長情竹。 經(jīng)常有香客問我藐不,道長,這世上最難降的妖魔是什么鲤妥? 我笑而不...
    開封第一講書人閱讀 56,408評論 1 283
  • 正文 為了忘掉前任佳吞,我火速辦了婚禮,結(jié)果婚禮上棉安,老公的妹妹穿的比我還像新娘底扳。我一直安慰自己,他們只是感情好贡耽,可當我...
    茶點故事閱讀 65,445評論 5 384
  • 文/花漫 我一把揭開白布衷模。 她就那樣靜靜地躺著鹊汛,像睡著了一般。 火紅的嫁衣襯著肌膚如雪阱冶。 梳的紋絲不亂的頭發(fā)上刁憋,一...
    開封第一講書人閱讀 49,772評論 1 290
  • 那天,我揣著相機與錄音木蹬,去河邊找鬼至耻。 笑死,一個胖子當著我的面吹牛镊叁,可吹牛的內(nèi)容都是我干的尘颓。 我是一名探鬼主播,決...
    沈念sama閱讀 38,921評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼晦譬,長吁一口氣:“原來是場噩夢啊……” “哼疤苹!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起敛腌,我...
    開封第一講書人閱讀 37,688評論 0 266
  • 序言:老撾萬榮一對情侶失蹤卧土,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后像樊,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體尤莺,經(jīng)...
    沈念sama閱讀 44,130評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,467評論 2 325
  • 正文 我和宋清朗相戀三年凶硅,在試婚紗的時候發(fā)現(xiàn)自己被綠了缝裁。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片扫皱。...
    茶點故事閱讀 38,617評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡足绅,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出韩脑,到底是詐尸還是另有隱情氢妈,我是刑警寧澤,帶...
    沈念sama閱讀 34,276評論 4 329
  • 正文 年R本政府宣布段多,位于F島的核電站首量,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏进苍。R本人自食惡果不足惜加缘,卻給世界環(huán)境...
    茶點故事閱讀 39,882評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望觉啊。 院中可真熱鬧拣宏,春花似錦、人聲如沸杠人。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,740評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至辑莫,卻和暖如春学歧,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背各吨。 一陣腳步聲響...
    開封第一講書人閱讀 31,967評論 1 265
  • 我被黑心中介騙來泰國打工枝笨, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人揭蜒。 一個月前我還...
    沈念sama閱讀 46,315評論 2 360
  • 正文 我出身青樓伺帘,卻偏偏與公主長得像,于是被迫代替她去往敵國和親忌锯。 傳聞我的和親對象是個殘疾皇子伪嫁,可洞房花燭夜當晚...
    茶點故事閱讀 43,486評論 2 348

推薦閱讀更多精彩內(nèi)容