從去中心化存儲的背景與價值主張談起,分析 BitTorrent、IPFS 和 Lambda 等偏向基於內容尋址的文件共享網絡,以及 Sia、Storj、MaidSafe 等偏向電子網盤的項目。

原文標題:《萬字講透去中心化存儲》
作者:陳藝鑫,HashKey Hub Research 研究員

去中心化存儲是一種通過分佈式存儲技術將文件或文件集分片存儲在不同供應方提供的磁盤空間上的存儲商業模式。它主張強隱私保護、低存儲成本、數據冗餘備份存儲、高速等價值主張、開源的應用程序和算法,只有全部實現以上主張纔可能大範圍代替中心化存儲。它有利於規避單點故障和數據的價值傳遞。

去中心化存儲的架構自下而上依次爲 TCP/IP 協議、區塊鏈、去中心化存儲協議和應用層。其中,TCP/IP 協議對應 Layer 0 的網絡層,包括網絡拓撲結構以及交易的傳播機制;區塊鏈屬於 Layer 1,它自下而上分別爲加密基礎設施(一般爲 SHA-256 等算法)、存儲證明機制(共識機制);去中心化存儲協議(服務層)包括存儲協議(鏈上)、檢索協議(鏈下)、身份協議(鏈上)、內容分發協議、激勵協議等,包括 Layer 1 的激勵分配機制和 Layer 2 的智能合約與腳本文件;最上層則是應用層,包括客戶端軟件和加速軟件等。

去中心化存儲與中心化存儲在存儲空間來源、帶寬來源、安全性、使用方式、行業發展狀態等多個維度存在差異,導致其規模和性能遠遠不如中心化存儲系統。雖然 IPFS 等項目通過不同的「非中心化」設計方式彌補了其不同的缺陷,通過對上傳方和存儲節點給予代幣激勵的方式使全網存儲總規模擴大,但是項目方與用戶的利益不一致、費用結構的劣勢等方面因素使去中心化存儲的發展陷入瓶頸和停滯。本文結合實際情況,對去中心化存儲實現其價值主張提供了參考建議。

一文說透去中心化存儲架構及 BitTorrent 與 IPFS 等代表項目

1 去中心化存儲背景與價值主張

1.1. 去中心化存儲產生的背景

WEB 3.0 提倡「以數據爲中心,數據價值化和隱私保護」,而去中心化存儲在其中扮演着至關重要的角色,其中數據安全和隱私保護對應數據冗餘存儲和備份功能,而數據價值化對應的是文件共享的價值傳遞。數據安全方面,相比較於個人,企業往往更加重視公司數據的安全和隱私保護。企業存儲在雲端的數據往往是公司的機密,很多數據一旦被泄露很可能將公司在市場競爭上至於不利的地位,傳統的公司資料實物存儲方法對於大型企業來說早已不足以支撐海量數據存儲的需求;數據價值共享方面,越來越多的人希望共享資源的同時獲得相應的交換價值。比如人大經濟論壇和喜馬拉雅等平臺在共享知識學習和文件的時候需要通過法幣或積分的形式換取,而百度網盤和迅雷大多數則是以免費的形式進行價值傳遞,它們僅僅只是對下載速度等性能收取會員費,而共享內容的種子方並沒有獲得因共享文件而獲得的價值。

近幾年來,全球和國內雲存儲市場發展迅速,從 GB 級別到 TB 級別再上升到 PB 級別,文件存儲的種類越來越多,文件的數據量也越來越大。

圖表 1:全球雲存儲和國內雲存儲市場迅猛發展

一文說透去中心化存儲架構及 BitTorrent 與 IPFS 等代表項目數據來源:中國產業信息研究

2012-2017 年,全球雲存儲市場維持 20% 以上的高複合增速,而國內雲存儲市場的增速維持在 85%-110%。根據多家機構的預測結果,預計 2022 年全球雲存儲市場規模將達到 1000 億美元以上。

雖然雲存儲市場的規模和用戶在飛速增長,但是中心化存儲市場卻具有四大缺陷:無法保障版權、無法保障數據安全、隨時面臨服務商停止運營的風險、數據缺乏價值化。

不論是由亞馬遜等公司的第三方中心化存儲,抑或者是公司本身存儲用戶的數據,從法律角度上用戶對他們泄露數據信息不具有期待可能性。尤其是在數據爲王的商業模式時代,精準數據將對各行各業的重構,控制數據來源或者以比競爭對手更低的成本獲取數據的企業,其競爭實力將會顯著高於其競爭對手。所以,競爭對手往往會想方設法的獲取數據,而將用戶數據泄露或出售的行爲往往可以讓數據存儲服務商獲得巨大的利益。

用戶數據被收集後,中心化的存儲使用戶數據暴露在巨大的風險之下(泄露、黑客攻擊等)。CSO 統計了自 2000 年以來最重大的 18 起用戶數據泄露事件,尤其是最近兩年,而且數據泄露量級也在呈指數級上升,不論是黑客攻擊等外因,還是中心化存儲方惡意的內因。例如,印度 10 億公民身份數據庫 Aadhaar 被曝遭受網絡攻擊事件、Facebook 劍橋分析公司事件等。

圖表 2:21 世紀 18 起重大用戶數據泄露事件

一文說透去中心化存儲架構及 BitTorrent 與 IPFS 等代表項目數據來源:CSO

由此,去中心化存儲的商業模式就應運而生了。

去中心化存儲基於區塊鏈技術,通過非中心化的架構結合中心化與去中心化各自的優勢在效益與公平之間探索平衡點,使存儲的安全性提升;同時,通過區塊鏈外存儲和 API 接口的中心化處理,使得存儲網絡的 TPS 在現有公有鏈和聯盟鏈的基礎上得到大幅改善;並且,通過對種子節點或文件上傳方實施激勵措施,讓其數據價值化。

1.2. 去中心化存儲定義的內涵與外延

存儲市場的商業組織形式可以分爲中心化存儲和去中心化存儲。中心化存儲是將數據完整的存儲在中心化機構開發的服務器上,去中心化存儲則是將數據切片分散存儲在多個獨立的存儲供應商上。二者的技術實現方式通常會以分佈式存儲來體現。分佈式存儲是一種數據存儲技術,它是將數據分散的存儲於多臺獨立的機器設備上,通過糾刪碼(Erasure Encoding)技術實現數據的冗餘存儲。分佈式網絡存儲系統採用可擴展的系統結構,利用多臺存儲服務器分擔存儲負荷,利用位置服務器定位存儲信息,解決了傳統集中式存儲系統中單存儲服務器的瓶頸問題,並提高了系統的可靠性、可用性和擴展性。

需要注意的是,分佈式存儲僅僅是一種存儲的技術方式,而中心化或去中心化存儲是存儲的商業模式。因爲設備服務器與存儲供應者是一對多的關係,即一個存儲供應商可以控制多個存儲節點,所以去中心化存儲一定會使用分佈式存儲技術;但是,中心化存儲可以使用分佈式存儲技術,也可以不使用分佈式存儲技術。

圖表 3:分佈式存儲技術在去中心化存儲和中心化存儲的體現

一文說透去中心化存儲架構及 BitTorrent 與 IPFS 等代表項目注:實線箭頭表示「一定會用分佈式存儲技術」,虛線箭頭表示「不一定會用分佈式存儲技術」,數據來源:HashKey Hub

1.3. 去中心化存儲的價值主張

去中心化存儲代表着大規模存儲的效率和經濟的根本轉變,它的價值主張主要體現在以下幾個方面:

(1)增強安全性和用戶隱私。去中心化存儲對數據的加密處理不僅僅侷限於用戶和軟件終端,而且在存儲網絡所有環節上都在進行加密處理,並通過私有網絡訪問密鑰、零知識證明等方法保護用戶隱私。

(2)存儲平臺或網絡的算法和代碼必須是開源的。由於 2C 端的存儲服務已經被中心化存儲搶佔了大多數市場,由於在開源項目初期進入門檻較高,大多數集中於 2B 端,只有代碼開源才能讓社區和應用的完善形成有效的正反饋效應。如果算法和代碼不公開透明,則存儲網絡就會變相的中心化。

(3)通過冗餘備份防止數據丟失。數據存儲於不同的節點,通過數據冗餘防止數據丟失(在數據存儲或傳輸出錯時存儲額外的副本)。

2 去中心化存儲系統的架構與運行

2.1. 去中心化存儲的工作原理

在文件共享方式上,去中心化存儲系統文件共享方式與中心化存儲截然不同,中心化存儲系統的大型文件上傳後,文件以整體或切片的形式存儲在單一或分佈式的網絡或服務器上,需要及其高效的開發、運營團隊來維持其運轉。然而,去中心化存儲必須使用分佈式存儲技術,初始種子節點(最初擁有完整文件資源的節點)在將大型文件進行切片處理後,使其產生多個 Pieces,每個 Piece 分別存儲在不同的節點上,每個一般節點在下載單個 Piece 並上傳到去中心化存儲網絡中讓其他節點下載後成爲這個 Piece 的種子節點,在多個節點完成相互共享 Piece 的過程中,實現 Piece 在除初始種子節點之外的節點共享,並不斷擴大該文件共享網絡中的節點數。所以,在同一時刻其他條件不變時,隨着下載人數的增多,下載同一內容的速度越快。因此,去中心化存儲系統彌補了中心化存儲系統傳輸速度慢的缺陷,同時克服了單點故障並保證了數據的安全性。

圖表 4:去中心化存儲工作原理

一文說透去中心化存儲架構及 BitTorrent 與 IPFS 等代表項目數據來源:HaskKey Hub

2.2. 去中心化存儲的架構

去中心化存儲架構自下而上有 4 個組成部分:網絡協議(TCP/IP)、區塊鏈或分佈式賬本、去中心化存儲協議和應用程序。其中,網絡協議對應的是 Layer 0;區塊鏈或分佈式賬本對應的是 Layer 1 的底層加密和共識機制;去中心化存儲協議對應的是 Layer 1 的激勵機制設計和身份協議,以及 Layer 2 對接各類應用程序的智能合約、腳本語言和 API 接口等,直接對接各種服務應用,一般以 API 或者是智能合約的形式呈現;應用程序則對應的是 Layer 2 的應用層 [1]。

圖表 5:去中心化存儲自下而上的架構層次和對應

一文說透去中心化存儲架構及 BitTorrent 與 IPFS 等代表項目數據來源:HashKey Hub

2.2.1. 網絡協議與網絡層

網絡協議包括 TCP/IP 的網絡協議、存儲網絡和傳播機制。網絡拓撲結構的搭建和設計方式往往代表了該系統的價值目標的實現方式,決定了其傳播機制和驗證機制的運行效率。

存儲網絡的拓撲結構可以是 P2P 網絡,也可以是存在幾個聯盟的中介服務商或運營商的去中心化網絡(本文將此網絡拓撲結構定義爲非 P2P 網絡),但不包括單一或寡頭中心化存儲服務商構建的基於多個服務器的分佈式存儲網絡。

圖表 6:非 P2P 網絡和 P2P 網絡

一文說透去中心化存儲架構及 BitTorrent 與 IPFS 等代表項目注:左側爲非 P2P 網絡,右側爲 P2P 網絡,數據來源:https://dwz.cn/6RvaeCgQ

對於 P2P 網絡,所有的節點都是對等節點(Peers),它們具有平等的權利和義務,去中心化程度是最高的,也是 BitTorrent、IPFS 和 Storj 等主流去中心化存儲項目的網絡結構模式,任何節點都可以通過租用和自身的磁盤等硬件爲用戶節點提供存儲空間,也可以通過支付代幣或免費的形式將數據分片存儲到不同的對等節點上,交易的過程是可逆的,每個節點獲得記賬權的概率是均等的。對於非 P2P 去中心化存儲網絡,存在部分中介節點,服務器沒有充分分散化和邊緣化,類似聯盟鏈(許可型區塊鏈)的網絡結構,交易信息的傳播和溝通必須經過這些中介節點,中介節點與一般節點在權利與義務存在一定的不對等 [2]。

傳播機制方面,P2P 網絡傳播延遲小於非 P2P 網絡,並且更容易擴大規模 [3]。假設對同一個內容存在一個非 P2P 共享存儲網絡(網絡 A)和一個 P2P 共享存儲網絡(網絡 B),A 和 B 中均有 100 個節點,其中 A 存在 20 箇中介節點,B 存在 100 個對等節點。從主觀能動性上來說,因爲網絡 B 更容易擴大規模,節點上傳文件分片(Pieces)的動力強於 A;從客觀規律性來說,即便網絡 A 和網絡 B 的節點數擁有保持在相等的狀態,由於存在網絡 A 存在中介節點,僅有中介節點充當種子節點的角色,其他 80 個節點就會有搭便車(只下載資源不上傳資源)的行爲,完全起不到作用,從而導致網絡傳播延遲大於網絡 B。

驗證機制方面,P2P 網絡的驗證動力明顯強於非 P2P 網絡。P2P 網絡可以通過設置獎勵代幣的方式,激勵大量的節點自發地去驗證前面交易的真實性,尋找相應證據來佐證;而非 P2P 網絡中,具有足夠驗證動機的節點僅有少數聯盟的中介節點,其他節點因利益分配不均缺乏其他交易真實性的動力。顯然,從發動 51% 攻擊、女巫攻擊或者鏡像攻擊的難易程度上,P2P 網絡顯然比非 P2P 網絡具有更高的難度。

2.2.2. 區塊鏈或分佈式賬本

去中心化存儲系統的區塊鏈或分佈式賬本自下而上一般包括加密基礎設施、交易記錄、廣播方式和存儲證明機制。

對於加密基礎設施,其加密方式一般是通過哈希函數加密,包括 SHA-1、SHA-256 等算法或配置表(Allocation Table)連接到默克爾根,在每個環節對數據加密處理後,再通過分佈式哈希表(DHT, Distributed Hash Table)、追蹤服務器(Tracker)等方式通過主鍵(Key——種子文件地址)檢索到特定存儲內容的共享網絡。

對於存儲證明機制(PoS, Proof-of-Storage),一般是在不通過下載內容的情況下,證明服務器在特定時刻已經存儲了特定下載內容,及其數據的完整性,從而降低惡意節點的舞弊空間。它包括數據持有性證明(PDP, Provable Data Possession)和可恢復數據證明(PoR, Proof-of-Retrievability),但是不同項目針對不同的作惡動機和方式對該共識機制進行了完善。比如 IPFS 通過複製證明(PoRep, Proof-of-Replication)和時空證明(PoSt, Proof-of-Spacetime)兩個方式分別遏制了女巫攻擊、生成攻擊和外源攻擊 [4]。

對於交易記錄,交易記錄一般都是以抽象化的形式加密後記錄在鏈上,交易記錄的發生與記錄必須在完成存儲證明之後,將文件名稱、時間戳、文件類別等信息組成區塊頭並存儲在鏈上。

2.2.3. 去中心化存儲協議

去中心化存儲協議是整個系統的核心,包括存儲協議、檢索協議、激勵機制和身份協議。其中激勵機制和身份協議處於其下層,一般在 Layer 1 (鏈上);存儲協議和檢索協議則屬於服務層,包含各類智能合約和腳本文件,從而決定了相關應用程序的設計,一般在 Layer 2 (鏈下)。由於去中心化存儲項目的定位不同、進展階段不同等多方面的因素,導致其去中心化存儲協議在不同維度的設計上存在較大差異。

身份協議方面,分爲存儲用戶的身份和節點身份。存儲用戶的身份一般以去中心化身份(DID, Decentralized Identity)的形成呈現,但是也有 BitTorrent 中心化身份的特例。用戶僅僅只在提供最小化滿足功能的個人信息的情況下,擁有對自己的身份及其相關數據的控制權、許可權和收益權;節點的身份一般在檢索過程中,以哈希字符串的形式存儲在鏈上,通過追蹤服務器或哈希表可以有效查詢某一特定文件或文件集的種子節點,一般表現形式爲 URL。

存儲協議方面,協議指出用戶節點以支付代幣或免費的方式從種子節點下載其感興趣的文件或文件集,而其對手方節點通過提供存儲空間(購買或租用)或帶寬資源來賺取代幣或獲得更高的獲得記賬權的概率,進而形成一個雙向的智能合約或交易訂單。首先,文件或文件集需要做切片處理,經過 2.1 節中的流程後,存儲磁盤空間由該內容的共享網絡(Swarm)中所有的節點提供相關的分片。存儲協議中所有的步驟流程均在鏈上進行,包括訂單的生成、共識機制的驗證和價值傳遞等。

檢索協議方面,去中心化存儲的檢索協議一般在鏈下執行,並由中心化機構進行開發、維護和運營,僅僅只有存在代幣經濟體系的情況下,其價值傳遞仍在鏈上進行,其記錄抽象化加密後記錄在區塊鏈或分佈式賬本上。檢索方式一般是通過節點身份(URL 形式)對種子節點和共享網絡進行檢索,通過中心化檢索服務器和 DHT (分佈式哈希表)的方式使下載者之間連接起來,進行資源檢索。而 DHT 是對 Tracker 檢索方式的改進,通過 Key (通過檢索內容的哈希函數生成的哈希字符串)對特定內容進行檢索,並大大提升了檢索效率。

圖表 7:DHT 檢索原理

一文說透去中心化存儲架構及 BitTorrent 與 IPFS 等代表項目數據來源:https://dwz.cn/hKCgNhEY

2.2.4. 應用層

應用層一般包括存儲客戶端軟件(包括存儲功能和檢索功能)、加速軟件和用戶代理程序等。通過 SaaS (Software-as-a-Service, 軟件即服務)的方式實現盈利,應用軟件及其相關基礎設施在 Layer 2 (鏈下)。客戶端軟件一般與用戶進行直接交互,它本質上是一個數據傳感器,用來記錄用戶在存儲網絡中的行爲,評估其轉化率、活躍用戶數(日活和月活)、搜索記錄等,從而爲項目未來的發展與經營提供有效參考。通過 DID (去中心化身份)的模式讓節點實現數據暴露最小化,使去中心化存儲客戶端僅僅在實現功能的基礎上對用戶的存儲行爲進行畫像,而不反映存儲和檢索功能之外任何的數據信息。

3 去中心化存儲與中心化存儲的比較

3.1. 比較分析

圖表 8:中心化存儲 VS 去中心化存儲

一文說透去中心化存儲架構及 BitTorrent 與 IPFS 等代表項目數據來源:HashKey Hub

3.1.1. 存儲空間和帶寬來源的差異

中心化存儲指由單一或寡頭第三方機構利用自身搭建的服務器對外提供大規模數據存儲服務的商業模式;去中心化存儲指大量普通 PC 服務器通過 Internet 互聯,對外作爲一個整體存儲服務。

中心化存儲的空間來源是由指定存儲服務提供商開發和運營的存儲雲端,比如 Amazon S3、阿里雲和華爲雲的服務器等,下載的帶寬由服務供應商提供;而去中心化存儲空間來源是大量能夠提供存儲空間的 PC、移動終端等設備,同一文件或文件集的共享網絡中的所有節點都可以爲其下載提供帶寬。

3.1.2. 使用方式的差異

由於存儲空間的來源不同,進而導致文件存儲方式和檢索方式截然不同。

存儲方面,中心化存儲由於存儲空間是由中心化存儲服務商開發並運營的,因此文件存儲空間容量足夠大,以至於可以存儲海量數據,存儲文件(不論是文本、語音還是視頻等)整體存入雲端,不需要對文件進行切片和去重的處理;去中心化存儲由於存儲供應者(服務商或個人)相對分散,存儲空間也相對分散,需要相應的匹配優化算法在冗餘的存儲空間中尋找最優的存儲空間提供者(即以最快的速度存儲併合適的存儲空間)。並且爲了保證存儲數據不會因單點攻擊或故障、女巫攻擊等外部性因素而丟失,去中心化存儲系統在進行加密處理後將文件進行切片處理,並分散存儲至不同的存儲提供者的磁盤空間中。

內容檢索方面,中心化存儲以賬戶範式的形式對已存儲數據進行訪問,通過輸入 HTTP URL 的方式連接到追蹤服務器(Tracker),從而實現搜索特定存儲內容;去中心化存儲因爲數據分散存儲在不同的節點,所以需要通過 DHT 分佈式哈希表將每個節點的鏈接用哈希函數生成哈希字符串,因此其下載速度隨着下載的人數增多而加快。但是也造成了數據的大幅度冗餘,很容易造成存儲空間資源(如磁盤等)和帶寬的浪費。

3.1.3. 安全性和隱私保護的差異

去中心化存儲和中心化存儲在安全性和隱私保護上具有各有優劣。去中心化存儲的優勢主要體現在以下兩個方面:

一方面,去中心化存儲規避了單點故障和部分節點斷網或不可用等風險。由於去中心化存儲的共享網絡爲 P2P 網絡,而中心化存儲的共享網絡爲以服務供應商爲中心的中心化網絡,從而導致前者不容易受到單點故障和服務器斷網的影響,也不容易受到黑客的攻擊。

另一方面,去中心化存儲使用戶的具體存儲內容不因主觀原因而泄露。去中心化存儲通過零知識證明和非對稱加密等技術,將哈希加密的字符串放在區塊的最底層,連接到默克爾根,從而將存儲內容的分片實現加密處理,其他任何節點包括運營商都無法看到存儲的具體內容;而 Amazon S3 等中心化存儲系統則通過賬號範式,其具體內容服務商都可以看到,從而導致大規模雲泄露和雲安全事件頻發,用戶的隱私無法得到有效保障。

但是去中心化存儲的劣勢也很明顯。採用非許可型區塊鏈技術實現去中心化存儲模式時,由於出塊的全網廣播和時間戳技術,導致所有參與節點都知道某一節點在某一特定時刻存儲數據,隨着節點之間的交互頻率提升,全節點可以很容易查找交易發生的區塊,從而暴露 Hash 值背後的身份,並用算法推測請求方或存儲方的存儲餘額。再加上分散存儲,每個片段如果都一般爲 64-512KB,一旦存儲網絡的大多數存儲空間掌握在少數幾個存儲供應商手中,會比文件整本存儲更容易被破解。

3.1.4. 存儲費用結構的差異

由於中心化存儲系統和去中心化存儲系統的存儲方式和檢索方式的差異,導致二者在服務費用定價上存在差異。

中心化存儲系統的收費標準是按月度、季度或年度爲單位根據存儲數據文件的大小收取存儲費用,並且對存儲費用實施一定的促銷策略(免費試用期等)。比如 Amazon S3 收取存儲費用爲每月 0.03 美元 /GB;阿里雲針對個人和企業採用差異化定價的方式:個人收費爲每月 10 元 /GB,企業收費爲每月 2.5 元 /GB。

由於大多數去中心化存儲網絡平臺處於項目運營初期,大部分產品處於開發階段或 MVP 階段,因此以低廉的存儲費用來吸引用戶流量。但是,相比較中心化的相對固定的服務費用,除了存儲費用之外,去中心化存儲還有檢索費用、手續費和交易費。因此,去中心化存儲僅僅適合冷數據存儲,在檢索數據量較少的情況下其費用比中心化存儲低得多。而對於熱數據,因檢索頻繁導致其成本可能高於中心化存儲的費用。對於去中心化存儲,因存儲共享網絡在擴大規模的同時必須伴隨着檢索熱度的增加,而搜索熱度的增加必然伴隨着檢索費用的上升,這在某種程度上是一個難題與挑戰。

3.1.5. 可用性的差異

可用性方面,中心化存儲在當前狀態下具有顯著優勢。

一方面,中心化存儲的文件存儲形式採用整本上傳,其數據完整性優於去中心化存儲。一般來說,可用性的度量維度是客戶端直接可用的文件(或文件集)的完整副本數。比如說對於種子節點,因其已上傳完整的內容資源,所以其可用性爲 1,而對於去中心化存儲分片後將不同的 Piece 存儲在不同的節點,其共享網絡中的單個節點的可用性通常小於 1。

另一方面,中心化存儲由一個或寡頭的服務供應商運營並維護其共享網絡的可持續性,特定共享內容網絡的持續期較長。其 HTTP URL 的有效性在上傳者不主動刪除的情況下,鏈接將永久有效;而去中心化存儲在存儲內容可用性的可持續性上比較短暫,主要原因是缺乏有效的激勵機制。

3.1.6. 存儲文件大小與類型的差異

中心化存儲在存儲文件大小與類型沒有任何限制,不論是視頻、音頻、文檔都可以上傳和存儲,具有顯著優勢。

去中心化存儲不同項目存在不同的適合存儲的文件類型和大小,比如 Storj 定義小文件是 1MB 以下的而大文件是 4MB 以上的。顯然文件越大切片的難度也就越高,有些去中心化存儲網絡只能存儲文本文檔和圖像,有些則可以存儲視頻和音頻,導致市場相對分散。

去中心化存儲可減輕數據故障和中斷的風險,同時提高對象存儲的安全性和私密性。它還使市場力量能夠以比任何一家單一提供商都無法承受的更高價格優化價格更低廉的存儲。儘管有很多方法可以構建這樣的系統,但是任何給定的實現都應該解決一些特定的責任。基於我們在 PB 級存儲系統方面的經驗,我們引入了一個模塊化框架來考慮這些責任並構建我們的分佈式存儲網絡。另外,我們描述了整個框架的初始具體實現。而對於大型文件(一般大於 1GB),在通過哈希加密產生的字符串太多,以至於用戶無法記住其哈希字符串,從而導致去中心化存儲對用戶的接受性減弱。

3.1.7. 下載速度評估方式的差異

去中心化存儲和中心化存儲在對下載速度評估上存在顯著差異。

中心化存儲通過中心化的服務器爲用戶提供帶寬進行下載,只要繳納會員費或者提升會員等級就可以顯著提升下載速度,比如用戶在使用百度網盤時,在沒有會員的情況下下載速度僅爲 200KB/s,而在成爲會員的情況下下載速度高達 2-5MB/s,而且還會有限速措施;去中心化存儲的下載速度取決於其貢獻程度,即該節點當前上傳內容分片的數量,在其他條件不變的情況下,種子節點的數量越多,下載的人數越多,上傳的內容越多,其下載速度越快。同時,對「只下載,不上傳」的搭便車節點以限速的形式進行適當的懲罰 [5]。

3.1.8. 發展程度的差異

中心化存儲市場佔主導,處於成熟期;去中心化存儲仍然處於初創期,技術架構和體系尚未成熟。

從行業週期理論角度出發,行業的發展階段分爲初創期、成長期、成熟期和衰退期。存儲市場總收入規模達到了 130 億美元以上,中心化存儲 2019 年上半年目前已經形成了寡頭壟斷的競爭格局,以 Dell Technology、H3C、IBM、聯想、華爲等巨頭爲主,並且前 10 家中心化存儲公司的市場份額達到 62.9%。

而 Sia、BitTorrent、IPFS 等去中心化存儲項目部分仍在開發階段,而且進度較爲緩慢,而開發完成的 Sia 和 Storj 的存儲空間總量僅爲 2PB,而實際使用空間僅爲全網總存儲空間的 40% 不到,與中心化存儲的收入相去甚遠。

圖表 9:存儲市場份額分佈

一文說透去中心化存儲架構及 BitTorrent 與 IPFS 等代表項目數據來源:http://www.cnbp.net/news/detail/22363

3.2. 去中心化存儲的挑戰

相比較於中心化存儲,去中心化存儲雖然在隱私保護和安全性上具有一定的優勢,但是在技術、治理、激勵機制等方面仍存在諸多不足,比如對於大型文件的用戶體驗減弱、費用不穩定、激勵機制設計上存在規模與效益的矛盾等。因此,未來去中心化存儲市場需要引入穩定的費用定價、建立恰當的激勵機制等方式來逐步完善,在保持安全性的優勢基礎上,實現規模與性能的兼顧。接下來將簡析現有的去中心化存儲項目,並對其優缺點進行相應評價。

4 去中心化存儲項目簡析

4.1. 代表性項目

目前,已經部署的去中心化存儲項目無法從單一的維度進行分類,每個項目都有各自的特點,只能在大致上進行初步劃分。

按功能實現的模式劃分,以 BitTorrent、IPFS 和 Lambda 爲代表的項目更加偏向於基於內容尋址的文件共享網絡,而以 Sia、Storj、MaidSafe 爲代表的項目則更加偏向於提供電子網盤。

BitTorrent 是最早的去中心化存儲項目,但是因其大部分缺乏激勵機制,只有少部分引入了 TRON 網絡的 BTT 經濟,所以作爲去中心化存儲模式的雛形;IPFS 則是去中心化項目中融資額度最大的,累積融資額高達 2.57 億美元,通過出塊獎勵、手續費和服務費等方式激勵點對點存儲,並通過優化的 Kademelia 算法匹配存儲的供應和需求;Lambda 在 IPFS 的基礎上引入了 TBB 經濟,通過質押 TBB 代幣變相地降低了存儲礦工的進入壁壘;Storj 和 Sia 更傾向於提供電子網盤,不要求實際存儲,只要提供足夠的存儲空間就可以挖礦;Sia 則是通過內置智能合約的方式爲 P2P 存儲網絡中不同的節點提供協商和溝通的空間。

圖表 10:代表性去中心化存儲項目比較

一文說透去中心化存儲架構及 BitTorrent 與 IPFS 等代表項目數據來源:HashKey Hub

4.2. BitTorrent——去中心化存儲項目的雛形

(1)項目介紹

BitTorrent 簡稱 BT,是一種開源的內容分發協議,由布拉姆科恩於 2003 年自主開發 [6]。它採用高效的軟件分發系統和點對點技術共享大體積文件(如一部電影或電視節目),並使每個用戶像網絡重新分配結點那樣提供上傳服務。常用的應用軟件包括 BitTorrent、μTorrent 等。

(2)工作原理

BitTorrent 的工作原理與一般的去中心化存儲協議無差異,如上文 2.1 節闡述,將文件進行切片處理,再將每個 Piece 分割成多個大小爲 64-512KB 的塊,每塊生成一個哈希字符串,然後利用 SHA-1 算法加密後分發給該文件或文件集的共享網絡(Swarm)中的各個節點。具有完整文件的對等節點爲種子節點,其他爲非種子節點。然後,共享網絡中的所有節點相互傳輸文件資源,讓更多的節點變成種子節點,並且通過 Opitimistic Unchoked 算法選出 2 個共享網絡外的節點,以擴大共享網絡。

(3)項目架構

圖表 11:BitTorrent 自下而上的架構圖

一文說透去中心化存儲架構及 BitTorrent 與 IPFS 等代表項目數據來源:HashKey Hub

BitTorrent 的架構採用「P2P+中心化」的雙層模式進行佈置,其中存儲共享網絡採用 P2P 的模式,而檢索協議採用中心化檢索模式,其索引文件後綴爲」.torrent」。

檢索方面,正如本文 2.2.3 節所述,BitTorrent 檢索中以加密後的鏈接爲節點的身份,採用哈希分佈表對接追蹤服務器的模式對特定存儲文件或文件集進行有效檢索。其中,Torrent 文件包括 Announce 和 info 兩個部分組成, Announce 爲檢索所需的 URL,其數據類型爲字符串;info 是一個字典型的數據,其索引包括 Name(內容名稱)、Piece Length(每個切片的字節大小 , 除了最後一片,其他等分)、Pieces(利用 SHA-1 哈希加密後的每個 Piece,以便於通過 hash 驗證)、length or files(內容是單一文件還是文件集)。

存儲方面,通過對特定 Torrent 文件切片後分散存儲在不同節點上,在此之前必須通過 Tit-for-Tat(TFT) 的激勵機制來篩選該內容共享網絡中的節點。BitTorrent 將該內容共享網絡中的所有節點分爲阻塞節點(Choked)和非阻塞節點(Unchoked),只有非阻塞節點擁有足夠的速度或帶寬下載或上傳該內容,而阻塞節點則無法傳輸內容。通過以下三種情況將被判定爲阻塞節點:

(a)貢獻過少或搭便車過多(只下載不上傳)而因此被列入黑名單的節點;

(b)接受節點本身就是種子節點;

(C)存儲空間已經滿負荷的節點。

在 TFT (Tit-for-Tat)算法配合的激勵機制下,一方面根據以上判定方法在該內容的共享網絡中確認阻塞節點,共享網絡中的其他節點爲非阻塞節點,再隨機抽樣出 2 個共享網絡外的節點作爲樂觀非阻塞節點(Optimistic Unchoking)。一方面,遏制了該共享網絡內節點搭便車(Leech)行爲;另一方面,有利於共享網絡的擴大。

(4)項目評價

BitTorrent 項目作爲最早的分佈式存儲項目,在激勵機制和共享網絡上的設計上是比較成功的,並通過免費的模式讓其普遍受到用戶的青睞,並且通過 P2P 網絡實現了下載人數越多速度越快的目標。

但 BitTorrent 仍存在一定的改進空間。首先,BitTorrent 只能將該激勵機制侷限在同一內容的共享網絡範圍之內,而對用戶下載後保持內容的可用性方面缺乏有效的激勵手段;其次,因 BitTorrent 的協議開源導致盜版猖獗,甚至通過該網絡傳播暴力、色情等不良內容,從而導致部分重視知識版權的國家(如法國等)全面禁止使用 BitTorrent;再者,BitTorrent 對貢獻帶寬高的節點不公平,在其他條件不變時,節點貢獻的帶寬越高,TFT 算法的時延越長,下載速度的邊際增長越低 [7]。

圖表 12:下載速度隨着帶寬的提升而邊際遞減

一文說透去中心化存儲架構及 BitTorrent 與 IPFS 等代表項目數據來源:http://bittorrent.org/bittorrentecon.pdf

4.3. IPFS——融資額度最高的項目

(1)項目介紹

IPFS 本質上是一個底層的開源文件傳輸協議,旨在對基於 HTTP URL 檢索協議進行補充甚至替代,其代幣爲 Filecoin。雖然 Filecoin 目前尚未正式在交易所上市或者發行,但是 Filecoin 期貨早在 2017 年 8 月上線。Filecoin 在上線之初就獲得超過 2.5 億美元的融資,其融資額遠超其他去中心化存儲項目,目前項目處於開發階段,Protocol Labs 目前對 Filecoin 激勵機制和經濟模型的仍在處於開發階段。

(2)項目架構

圖表 13:自下而上的 IPFS 架構

一文說透去中心化存儲架構及 BitTorrent 與 IPFS 等代表項目數據來源:HashKey Hub

架構最底層爲 Libp2p,包括路由層(網絡協議)和交換層(P2P 網絡),確保數據能夠在點對點網絡上實現點對點的傳輸。

上一層爲 Multiformat,用於加密數據並將數據抽象成放在鏈上的格式,它本質上是一個針對未來系統的協議集合,通過增強的自我描述格式(包括自我描述的哈希值、網絡地址、編碼值、序列化值、網絡傳輸流和分組網絡協議來實現互操作性並避免被鎖定。

再上一層是 Filecoin 協議作爲激勵層,該協議包括鏈上存儲市場、鏈下檢索市場和 Filecoin 區塊鏈三部分 [4]。存儲市場方面,礦工通過抵押 Filecoin 租用或購買存儲空間,接着用戶向其發起定向存儲請求,並生成 bid (用戶)和 ask (礦工)雙向訂單,並進行 PoRep (複製證明)和 PoSt (時空證明),最後用戶獲得有效存儲(完成兩種共識後的存儲大小),礦工獲得存儲費用,注意不論是訂單、交易記錄還是 Filecoin 的價值轉移全部在鏈上完成。檢索市場方面,用戶先發起檢索請求,接着礦工獲得檢索訂單並提供檢索服務,最後用戶通過支付 Filecoin 獲得服務,注意僅有 Filecoin 的價值轉移被記錄到鏈下,其他均在鏈下完成。Filecoin 區塊鏈方面,分爲訂單簿(Orderbook)、交易記錄(Transactions)、配置表(Allocation Table)。其中最底層的配置表通過連接到默克爾根對鏈上信息加密,用於存放雙方的數字簽名,對礦工發起質詢並接受其回覆;交易記錄用來實現 Filecoin 的價值轉移功能;訂單簿用來記錄存儲訂單。

圖表 14:自下而上的 Filecoin 架構

一文說透去中心化存儲架構及 BitTorrent 與 IPFS 等代表項目數據來源:《Filecoin 白皮書》

IPLD 包括命名層、對象層和文件層,用於定義和查找數據,從而實現文件從命名到編程再到檢索的過程。 對於命名層,IPFS 通過 IPNS 使在文件名變更的情況下鎖定到其最新狀態,它採用自我認證證明的方式,給每個用戶分配一個可變的命名空間(路徑爲 /ipns/),用戶可以在此路徑下發佈一個用自己私鑰簽名的對象,當其他用戶獲取對象時可以檢測簽名與公鑰和節點 ID (IPFS 之前生成的鏈接)是否匹配;對於對象層,IPFS 使用 Merkle DAG 技術,構建了一個有向無環圖數據結構,用於存儲對象數據,通常由 Base58 編碼的散列引用,該數據結構具有內容可尋址、防篡改、重複數據刪除的特點;對於文件層,將大於 256KB 的數據文件分割成多個塊(每塊 256KB),每塊的數據類型爲 blob 對象,list 對象由幾個 blob 對象組成(可能重複),而 Tree 則是一個 json 格式的從名字到哈希值的映射表,由於 Tree 比 blob 小從而便於通過 DHT 進行檢索。

(3)項目評價

IPFS 在治理上採用了 PoRep 和 PoSt 的證明有效遏制了女巫攻擊、生成攻擊和外源攻擊等投機行爲,並且通過強制購買 GPU 礦機使 PoSt 可以在每隔 45s 可以證明「任意節點是否在該特定時刻已經存儲了某一特定大小的文件」,通過默克爾樹讓每個文件分片(Piece)保留一個根哈希值,大大減少了數據冗餘。但是因項目處於初步公測階段,仍有以下幾點值得探討:

(a) IPFS 的市場非常小衆,僅僅是對私存儲(因爲容量有限),並且由於 GPU 礦機的挖礦成本較高,家庭戶無法直接參與到存儲挖礦,只能參與檢索過程並賺取服務費,僅僅只是對大型規模的礦池或者合夥存儲供應商具有較大吸引力,從而不利於全網總存儲集中於少數存儲供應商或礦池分散化,容易陷入 Filecoin 供過於求的困境;

(b)如果數據量較大(超過 1TB),用戶必須記住和保留多個根 Hash 值,從而不利於用戶體驗,如何控制少數家庭用戶的流失率將會成爲 IPFS 發展的挑戰;

(c)與 BitTorrent 相比,即便 IPFS 初期存儲免費,檢索費用根據數據熱度決定,不提供永久的存儲,僅僅只是租用存儲空間,高額的存儲費用和檢索費用以及高投入(GPU 礦機)導致用戶門檻巨高;

(d) IPFS 網絡沒有特定服務器的 P2P 節點,效率有待於進一步加強;

(e)無法充分遏制存儲礦工上傳大量垃圾數據作爲有效存儲的行爲;

(f) PoRep 共識機制決定了無法進行全網校驗,付費存儲的方式纔可以進行挖礦,如果規模擴大,由於 Filecoin 的出塊率等於挖礦節點的有效存儲除以全網總存儲量,挖礦難度將會大增,無法賺取收益,容易陷入價格戰。

4.4. Lambda——基於 IPFS 的延伸

(1)項目介紹

Lambda 是一個區塊鏈數據存儲的基礎設施,通過對 Lambda Chain 和 Lambda DB 的邏輯解耦和分別實現,通過 Dapp 提供可無限擴展的數據存儲能力,並實現了多鏈數據協同存儲、跨鏈數據管理、數據隱私保護、數據持有性證明、分佈式智能計算等服務。

(2)項目架構

Lambda 包括 Lambda Chain (同構多鏈的鏈系統)、Lambda DB (同構多鏈的鏈系統)、Lambda Agent (提供內存數據存儲、性能監控、安全監控和 Metrics 數據上傳能力的探針系統)、Lambda P2P (提供數據檢索功能)[8]。Lambda 採用鏈庫分離的架構設計的原因有二:

(a)因爲區塊鏈系統更新導致分叉,所以將主要數據處理能力放在數據庫(Lambda DB)上;

(b)通過功能子鏈保證其可擴展性,從而實現隱私保護(基於多授權機構屬性加密)和數據持有證明(PDP, Provable Data Possession)。

圖表 15:鏈庫分離的 Lambda 架構

一文說透去中心化存儲架構及 BitTorrent 與 IPFS 等代表項目數據來源:《Lambda 白皮書》

(3)經濟設計

Lambda 項目採用 LAMB 和 TBB 雙層代幣的方式分別對存儲挖礦和質押存儲實施激勵和懲罰手段。其中,LAMB 是原生代幣,用於區塊獎勵發放,流通、支付交易手續費和生態應用費用結算;TBB 則是存儲網絡的存儲空間資產,主要作用是質押和錨定存儲資產權益。

Lambda 網絡中主要角色有 5 個:存儲礦工(提供存儲空間)、驗證節點(負責運營和維護共識網絡)、存儲資產做市商(爲存儲礦工提供存儲資源流通性)、合夥人節點(負責生態建設,不參與存儲網絡)、出塊節點(由驗證節點結合質押容量量按照權重選出,負責區塊數據的打包以及共識的發起)[9]。

出塊獎勵有 2 種:對於存儲挖礦方面,43% 的出塊獎勵給礦工及其驗證節點;對於質押挖礦方面,50% 的出塊獎勵給礦工及其驗證節點。二者的區塊打包收益則根據該驗證節點收集投票的多少決定打包區塊收益(出塊總獎勵的 1%-5%),社區收益佔總收益的 2%,驗證人可以自定義佣金費率。

當驗證節點對區塊進行雙籤、對近 10000 個塊中少於 500 個簽名、質押少於 666.66TBB 時會受到「扣除質押 TBB 和提出驗證節點候選人」的懲罰。

(4)項目評價

Lambda 通過非中心化的方式,在存儲做市商和數據庫上以中心化的形式部署,大大提高了全網的數據吞吐量,使網絡未來的可擴展性大大增強。它本質上是 IPFS 項目的延伸與擴展,並且通過引入 TBB 抵押存儲機制降低了使用門檻,但是仍然不利於家庭用戶參與到存儲挖礦。

但是,Lambda 仍有值得商榷的地方。比如 Lambda 通過 NPoS(Nominated Proof-of-Stake) 和 PDP(Provable Data Possession) 的存儲證明機制無法證明存儲礦工惡意存儲大量垃圾數據從而提升其打包概率賺取 LAMB 的行爲,一旦驗證節點候選人被「黑化」,甚至全網總存儲份額無法得到充分稀釋,使 51% 攻擊的難度較低,大多數挖礦的收益集中於少數人手上,從而導致用戶的存儲需求和質押需求大幅下降,從而導致 LAMB 逐漸供過於求,導致 LAMB 兌美元大幅下跌和貶值。

4.5. Storj ——基於 ETH 網絡的分佈式存儲協議

(1)項目介紹

Storj 是一個基於以太坊的分佈式雲存儲協議,由盈利性公司 Stroj Labs 開發,旨在利用未使用的硬盤和帶寬,讓 P2P 網絡上任何節點之間都可以進行磋商、數據傳輸、驗證數據完整性和可用性、檢索數據、價值傳遞,存儲節點通過提供存儲空間收取租金,而其對手方承租磁盤空間支付租金。當前,Storj 全球總存儲量已經超過了 150PB,存儲費用爲每月 0.015 美元 /GB,下載 1GB 所需的帶寬費用爲 0.05 美元。

(2) Storj 協議架構

Storj 協議包括文件切片處理、Storj 網絡、PoR 證明機制、支付協議、廣播協議。對於同一內容的共享網絡,節點分爲存儲節點、衛星節點和上連節點 [10]。

存儲節點方面,通過出租磁盤和提供帶寬而賺取 Storj 代幣,如果沒有通過隨機審查,則該節點會從存儲節點池中剔除,它們不爲存儲數據的初始傳輸(帶寬入口)付費,不爲節點發現支付任何費用,有效遏制了存儲節點爲了更多存儲空間而刪除原有存儲數據的行爲(延長內容共享網絡的可用性的持續期)。存儲節點將允許管理員在最近 30 天內配置最大的磁盤空間和每個衛星的帶寬使用量,在跟蹤以上 2 個指標後拒絕沒有有效簽名的操作。

文件切片和加密方面,對於特定文件集 Bucket,每個文件可以根據特定路徑進行檢索。對每個文件,首先將其切分成多個 Segments (分片大小由用戶自定義),若某個 Segment 小於其元數據的大小,則節省了存儲空間,該 Segment 被稱爲內聯 Segment。在通過 AES256-CTR 算法加密後,將加密後的哈希字符串拆分成多個 Stripe,每個 Stripe 執行糾刪碼編碼(通過調整原數據塊和校驗數據塊的比例來提升網絡節點的容錯能力,使數據安全性提升),將相同索引的糾刪碼片段拼接組成一個 Piece。最後,將每個 Piece 分發給共享網絡中不同的節點,並通過指針實現對不同文件片段的檢索。

Storj 網絡方面,爲了使承租節點和存儲節點進行磋商和交互,Storj 將合約和磋商系統建立在 Kademlia 分佈式哈希表上,以實現傳遞所需的確認信息最小化。通過增強核心 Kademlia 功能,傳遞 Ping (確認節點是否在線)、STORE (在 DHT 上存入哈希值)、FIND_NODE (尋找 DHT 上有存儲空間的節點)、FIND_VALUE (尋找 DHT 上的哈希值)四種信息,促進不同節點的交流。首先,如果某個節點要加入某個文件的共享網絡,必須先創建一個公鑰私鑰對,Kademlia 節點的 ID 必須與通過 SHA-256 加密後的公鑰哈希字符串一致,因此每個節點的 ID 也是一個有效的比特幣地址,在發送信息前必須通過數字簽名對信息進行驗證。

共識機制方面,Storj 通過「質疑-回覆」的形式來實現 PoR (檢索證明),確保遠程主機確實存儲了特定文件分片,並驗證文件的完整性和可用性。Storj 採用默克爾根和默克爾樹的深度兩個指標,通過驗證其葉子集合的元素個數是否與默克爾樹的深度相等,並且提供的哈希值會重新創建存儲的根。通過執行簡單的 Tit-for-Tat 模式,如果存儲節點未通過審覈或無法證明自己仍然有數據,那麼承租節點就不必付款;如果租戶下線或未能按時付款,則存儲節點可以刪除數據,並從其他人那裏尋找新合同。

圖表 16:Storj 文件存儲工作原理

一文說透去中心化存儲架構及 BitTorrent 與 IPFS 等代表項目數據來源:《Storj 白皮書》

圖表 17:Stroj 節點分類

一文說透去中心化存儲架構及 BitTorrent 與 IPFS 等代表項目數據來源:HashKey Hub

(3)項目評價

Storj 在技術上通過 Bridge 客戶端實現了對 Amazon S3 等其他存儲格式的兼容,並且通過以美元計價的標準避免了存儲費用的大幅波動,其存儲費用遠遠低於中心化存儲平臺,並且通過 Kademlia 算法優化了檢索模式,大大減少了數據的冗餘和資源浪費。

但是有些地方仍值得商榷。首先,由於 Storjcoin 的波動率較高,從而導致存儲節點獲得的出塊獎勵大幅波動,從而無法在長期上保證更多的用戶提供更多的存儲空間。其次,由於缺乏有效措施延長文件可用性維持的時間,這將不利於共享網絡的擴大。再者,隨着 Filecoin 加入市場,Storj 不具備顯著的競爭優勢和資金優勢。更重要的是,Storj 本質上只是完成存儲資源的對接,缺乏有效的內容尋址方法,不利於文件共享(如電影、音頻等),只是適用於大規模數據的存儲(如監測數據、交易數據等)。

4.6. Sia——BTC 在去中心化存儲的變體應用

(1)項目介紹

Sia 是一個分佈式雲存儲協議,由 Nebulous 公司負責開發與運營,傾向於在 P2P 和 2B 端與現有存儲解決方案進行競爭。Sia 支持存儲網絡的對等節點之間形成合約,爲下載特定存儲內容定價,旨在讓承租節點以更便宜、更快捷的方式租賃到合適的存儲空間,通過 Siacoin 經濟設計促進承租節點和出租節點雙方達成一致。目前,Sia 的存儲空間總容量僅爲 2PB,已存儲的空間僅爲 206TB,而存儲節點爲 333 個,累計下載總量僅爲 1.2MB。

(2)項目架構

交易結構方面,Sia 交易包括協議版本號、Arbitrary Data (任意數據字段,以便於數據的檢索)、礦工獎勵、Inputs (收入資金)、Outputs (支出資金)、文件合約、存儲證明、數字簽名(所有輸入都應當進行數字簽名)[11]。Sia 通過在所有交易中使用 M-N 多重簽名方案,完全避開了腳本系統,減少了複雜性和攻擊可能性。每個區塊頭的輸入必須來自上一個區塊頭的輸出,因此該區塊的輸入必須是上一個區塊頭的輸出的哈希值,輸出包含其 Merkle 根;Siacoin 的支出條件是「時間鎖定已經超且足夠的指定公鑰添加了它們的簽名」,簽名的數量、公鑰組和時間鎖定寫入 Merkle 樹的葉子節點,而該樹的默克爾根作爲 Siacoin 發送的地址,交易雙方可以自主選擇披露公鑰的數量和簽名的數量。

文件合約方面,文件合約是存儲節點和其客戶之間的存儲協議,文件被分片成多個散列在哈希加密後,生成其默克爾根(合約的核心),根散列以及文件的總大小可用於驗證存儲證據。合約進一步規定持續時間、挑戰頻率和支付參數(有效證明的獎勵、無效或缺少證據的獎勵以及可以錯過的最大證明數量)。其中挑戰頻率規定提交存儲證明的次數,在挑戰期間提交一份有效證明將觸發轉賬交易;若沒有在持續期內提供有效證明,合約將會發送到「錯過證明」地址(有效防止 DDOS 攻擊)。支付參數中「可以錯過的最大證明數量」爲 1 個閾值,如果錯過證明數量超過該閾值,合同無效。

存儲證明方面,存儲證明僅需要合約的身份(哈希值)和證明數據。首先,通過原文件分片存儲在默克爾樹的葉子節點,生成的哈希根將與之前預先生成的根哈希進行對比,若二者相同,則可證明這些分片確實來源於原文件。Sia 通過讓客戶端指定很高的挑戰頻率,並對丟失的證據進行大量處罰,從而阻止低於全網總算力 50% 以下的任何攻擊,並遏制私自挖礦的行爲。另一方面,由於用戶節點有權拒絕任何交易,所以當惡意礦工人爲以「是否將存儲證明上鍊」爲名來勒索高額交易費時,用戶可以直接終止交易。

(3)項目評價

Sia 協議本質上是 BTC 在去中心化存儲的一個變體應用,但是其機制設計有些地方仍值得商榷。在 Siacoin 經濟方面,Siacoin 的發行數量是遞增的,但是其增長率是遞減的(初始區塊產生 30 萬個 Siacoin,之後每產生一個區塊減少 1 個 Siacoin,直到減少到 30000 個區塊,平均每 10 分鐘產生 1 個區塊),從而導致隨着 Siacoin 數量的增加而帶來較大幅度的貶值,從而導致其存儲費用波動較大。對於挖礦體系來說,隨着 Siacoin 的貶值與濫發,導致算力較強的礦工會產生不成比例的優勢,最終挖礦人數將會大幅下降,不利於調動礦工參與的積極性。因此,Sia 不論是從存儲規模上還是交易效率上都遠遠低於 Storj,更不用說和 BitTorrent 相比。

5 去中心化存儲未來展望

5.1. 去中心化存儲的發展陷入瓶頸或停滯

從嚴格意義上,去中心化存儲並非真正意義上的去中心化,而是非中心化,比如 Filecoin 在存儲方面是去中心化的,而在檢索方面是中心化的。儘管中心化存儲在隱私保護、收費標準、數據安全性方面存在諸多不足,但是去中心化存儲由於法律因素以及經濟設計等諸多問題,從而導致大多數去中心化存儲平臺的客戶仍然十分小衆,提供的存儲空間遠遠小於中心化存儲網絡,難以滿足數據大規模存儲和檢索的要求,與 1.3 節中提到的去中心化存儲的價值主張發生嚴重背離。以下兩點主要原因導致去中心化存儲網絡難以做大:

(1)存儲成本不穩定,費用結構不合理

一方面,去中心化存儲網絡的存儲成本存在較大波動性。比如 Sia、MaidSafe 和 Lambda 等項目因其代幣波動較大,而且代幣發行機制設計不合理,容易導致代幣超發,從而導致其代幣價格長期呈下跌趨勢,進而導致存儲費用和檢索費用不穩定,從而導致用戶流失率較高。另一方面,數據檢索不是免費的,從而使費用結構不合理。儘管去中心化存儲網絡的存儲費用遠遠低於中心化存儲,比如 Storj 的存儲費用僅爲每月 0.015 美元 /GB,遠遠低於 Amazon 的每月 2.5 美元 /GB,但是如果考慮檢索費用或者對數據檢索和調用頻率的話,那麼去中心化存儲費用很可能高於中心化存儲的成本。

(2)利益多方衝突導致項目方的短期行爲嚴重

爲了克服傳統非許可型區塊鏈(如 BTC、ETH 和 EOS)等可擴展性不足的缺陷,相當一部分去中心化存儲項目採用非中心化的方式,比如 Lambda 在存儲資產做市商的中介化與鏈下的 Lambda DB 和 Filecoin 檢索協議的鏈下處理。但是,項目方和用戶的利益在諸多情況下存在不一致,從而導致項目方的短期行爲。存儲網絡規模的擴大和交易公平性往往是存在矛盾的,例如 Filecoin 的項目方爲了短期擴大全網存儲規模而基於有效存儲佔全網總存儲的比例設計挖礦成功的概率,導致用戶存儲和挖礦的動力減弱,具有高存儲空間的節點可以獲得比線性增量更高的回報和收益,而項目方本身可能就會扮演具有高存儲空間的角色,使去中心化存儲項目的價值觀出現扭曲。

(3)代幣發行通脹率設計陷入兩難

去中心化存儲網絡的商業目標是吸引更多的用戶提供更多的存儲空間,並且將存儲空間的利用率最大化,而實現此目標的前提是保證代幣的高流動性並且不讓其幣值穩定,但是這往往是矛盾的。如果代幣發行的通脹率偏低,在未來一定時期內代幣的發行量是遞減的,很容易造成代幣走向升值趨勢,存儲網絡參與者傾向於囤積代幣以實現資產增值,從而不利於維持存儲市場的高流動性,全網存儲總量將會受到抑制;如果代幣發行的通脹率偏高,在未來一定時期內代幣的發行量是遞增的,很容易造成代幣兌法幣(一般是美元)長期呈貶值趨勢,那麼礦工的鑄幣交易產生的收益會大幅縮水,從而導致礦工買入磁盤的投入高於因提供存儲空間產生的收益,若買入 GPU 礦機挖礦則更會入不敷出,從而導致進入項目壁壘較高。目前,MaidSafe、Storj、Sia 和 Lambda 等項目陷入了第二種困境。

(4)如何快速稀釋全網總存儲的集中度

去中心化存儲項目在初期,全網總存儲將不可避免地集中在少數存儲供應商手中,它們大多數以合夥人的身份參與到其中。全網總存儲的大規模集中容易發生 51% 攻擊,不論攻擊方是單個存儲供應商還是礦池,甚至是「多方合謀」。導致大多數家庭用戶掌握的存儲份額越來越低,導致存儲區塊鏈從「非許可型」變質成「許可型」,從而導致其代幣的需求下降並陷入長期貶值趨勢,全網的流動性大幅減弱,甚至大型存儲供應商的流失。

5.2. 去中心化存儲發展建議

針對 5.1 節的去中心化存儲的發展瓶頸,我們對未來去中心化存儲項目的佈置提供以下參考建議:

(1) 引入穩定幣的機制使費用趨於穩定;

(2) 檢索應當免費;

(3) 使用 Hash 加密時讓區塊頭上的根哈希值與上一個區塊頭的根哈希值高度相關,讓特定存儲內容的共享網絡的其他節點有更強的動力去驗證其存儲文件的完整性和可用性;

(4) 設計合理的共識機制,讓出塊概率與提高有效存儲總量呈線性正相關;

(5) 降低提供存儲的進入壁壘,讓家庭用戶可以以存儲礦工的身份參與到存儲網絡當中,不要讓過多的全網總存儲集中在少數存儲供應商的手上,建議以存儲空間的絕對值爲度量實施有效獎勵,而非比例。

參考文獻

[1] 袁煜明 , 劉洋 .《區塊鏈技術可擴展方案分層模型》

[2] 彭俊 . 複雜網絡的拓撲結構及傳播模型的研究 [D]. 西安 : 西安電子科技大學 .2009

[3] 海沫 , 朱建明 . 區塊鏈網絡最優傳播路徑和激勵相結合的傳播機制 [J]. 計算機研究與發展 .2019,56(6):1205-1218

[4]《Filecoin 白皮書》: https://filecoin.io/filecoin.pdf

[5] E. Adar and B. A. Huberman. Free riding on gnutella. First Monday, 5(10), 2000

[6]《BitTorrent 白皮書》: https://dwz.cn/dKuhcIRR

[7] Bram Cohen. Incentives Build Robustness in BitTorrent. bram@bitconjurer.org. 2003

[8]《Lambda 技術白皮書》: https://dwz.cn/yktCaGCp

[9]《Lambda 經濟白皮書》: https://dwz.cn/ftm1Wl6d

[10]《Storj V3 白皮書》: https://storj.io/storj.pdf

[11]《Sia 白皮書》: https://sia.tech/sia.pdf

來源鏈接:mp.weixin.qq.com