聊聊去中心化存儲(chǔ),你學(xué)會(huì)了嗎?
嘿,朋友!早上好。
最近,我在做一個(gè) NFT 項(xiàng)目,需要 IPFS 來存儲(chǔ) NFT 圖像和元數(shù)據(jù)。這激發(fā)了我更多地了解去中心化存儲(chǔ)的興趣,它已經(jīng)讓我著迷了一段時(shí)間。
所以,今天我們將在這篇博文中了解去中心化存儲(chǔ)(我們簡稱為DStorage)和一些最流行的 DStorage 協(xié)議。
讓我們開始吧!
什么是DStorage?
顧名思義,DStorage是一個(gè)不依賴中央服務(wù)器或權(quán)威機(jī)構(gòu)的存儲(chǔ)系統(tǒng)。
與由單個(gè)集中式實(shí)體管理和操作的集中式存儲(chǔ)系統(tǒng)不同,用戶操作節(jié)點(diǎn)的對(duì)等網(wǎng)絡(luò)運(yùn)行 DStorage,每個(gè)節(jié)點(diǎn)都存儲(chǔ)數(shù)據(jù)副本,從而創(chuàng)建一個(gè)彈性文件存儲(chǔ)共享系統(tǒng)。
去中心化使其比傳統(tǒng)存儲(chǔ)系統(tǒng)更能抵抗審查和攻擊。
為什么需要 DStorage?
如今,Google Drive、AWS 和 Dropbox 等云服務(wù)已成為托管文件和網(wǎng)站的首選。
雖然這些服務(wù)幫助個(gè)人、初創(chuàng)公司和大公司擺脫了管理其存儲(chǔ)基礎(chǔ)設(shè)施的麻煩,但此類服務(wù)的中心化性質(zhì)存在一些嚴(yán)重缺陷。
中心化存儲(chǔ)服務(wù)的眾多缺陷之一是它們很容易被審查。如果政府或其他機(jī)構(gòu)不希望某些信息公開,他們可以命令存儲(chǔ)提供商將其刪除,并且以后不再存儲(chǔ)。
此外,提供商甚至可以更改存儲(chǔ)數(shù)據(jù)的內(nèi)容,從而導(dǎo)致信息完整性不佳。
另一個(gè)缺陷是中心化存儲(chǔ)服務(wù)容易受到攻擊。如果黑客能夠訪問集中式存儲(chǔ)提供商的服務(wù)器,他們就有可能訪問甚至刪除您存儲(chǔ)在這些服務(wù)器上的所有數(shù)據(jù)。
由于這些服務(wù)的數(shù)據(jù)托管在中央服務(wù)器上,單點(diǎn)故障意味著任何中斷都可能導(dǎo)致數(shù)據(jù)暫時(shí)甚至永久丟失。
DStorage 通過提供抗審查、安全、分布式、高效、健壯、具有成本效益和彈性的數(shù)據(jù)存儲(chǔ)來解決所有這些問題。
DStorage 是如何工作的?
DStorage模型的工作方式是將整個(gè)數(shù)據(jù)的副本或部分分布在一個(gè)點(diǎn)對(duì)點(diǎn)的網(wǎng)絡(luò)中,每個(gè)節(jié)點(diǎn)都被激勵(lì)去存儲(chǔ)數(shù)據(jù)。
DStorage 系統(tǒng)通過跨多個(gè)節(jié)點(diǎn)冗余存儲(chǔ)數(shù)據(jù),確保數(shù)據(jù)的安全性和可訪問性。當(dāng)您跨多個(gè)節(jié)點(diǎn)存儲(chǔ)相同的信息時(shí),即使有幾個(gè)節(jié)點(diǎn)宕機(jī),您仍然可以從剩余的存儲(chǔ)節(jié)點(diǎn)中檢索數(shù)據(jù)。
圖片來源:LeewayHertz[1]
對(duì)節(jié)點(diǎn)運(yùn)營商有什么好處?
我們的計(jì)算機(jī)和移動(dòng)設(shè)備存儲(chǔ)空間中都有未使用的可用空間。DStorage 系統(tǒng)使用節(jié)點(diǎn)運(yùn)營商磁盤驅(qū)動(dòng)器上的可用存儲(chǔ)空間,激勵(lì)節(jié)點(diǎn)運(yùn)營商將其設(shè)備上未使用的存儲(chǔ)空間出租給 DStorage 網(wǎng)絡(luò)。
這是對(duì)DStorage如何工作的總體概述。讓我們了解流行的 DStorage 協(xié)議、平臺(tái)及其內(nèi)部工作原理。
DStorage協(xié)議和平臺(tái)
我們可以將以太坊網(wǎng)絡(luò)視為一個(gè)用于智能合約存儲(chǔ)的 DStorage 系統(tǒng)。但是當(dāng)存儲(chǔ)大量數(shù)據(jù)(如圖像和視頻)時(shí),它變得不可行,更不用說 gas 效率低下了,因?yàn)檫@與以太坊最初設(shè)計(jì)的目的不同。
因此,我們需要考慮其他為存儲(chǔ)目的量身定制的解決方案。
1.IPFS
IPFS 是一種點(diǎn)對(duì)點(diǎn)協(xié)議,用于在分布式文件系統(tǒng)中存儲(chǔ)、訪問和共享數(shù)據(jù)。
那個(gè)mumbo jumbo到底是什么意思?讓我們舉個(gè)例子。
我們都喜歡 Twitter(小鳥應(yīng)用程序太酷了)。要訪問 Twitter,您在https://twitter.com瀏覽器中輸入 URL,由于它指向 Twitter 的 IP 地址,我們可以得到該地址上的服務(wù)器存儲(chǔ)的網(wǎng)頁。
但是如果我們把 Twitter 放在 IPFS 上,我們就得不到 IP 地址。相反,我們得到一個(gè)內(nèi)容標(biāo)識(shí)符 (CID) 來訪問 Twitter,看起來像這樣:
IPFS 是如何工作的?
Web2 Internet 上存在一個(gè)問題:您可以根據(jù)位置查找內(nèi)容。
你想看 Netflix 嗎?酷,去https://netflix.com。
您想閱讀 Developer DAO 博客嗎?訪問https://blog.developerdao.com。
但是,如果內(nèi)容的位置由于某種原因發(fā)生變化怎么辦???
內(nèi)容尋址解決了這個(gè)問題。通過內(nèi)容尋址,每個(gè)內(nèi)容都有一個(gè)基于指向 IPFS 中數(shù)據(jù)的數(shù)據(jù)加密散列的 CID。
這意味著兩個(gè)完全相似的文件將具有相同的 CID。內(nèi)容稍有不同,就會(huì)產(chǎn)生完全不同的 CID。IPFS 默認(rèn)使用 SHA256 哈希算法生成 CID。
IPFS 使用內(nèi)容尋址來識(shí)別和查找內(nèi)容,而不是查看內(nèi)容所在的位置。
圖片來源:Infura 博客[2]
這些DStorage協(xié)議有很多內(nèi)容,每個(gè)都值得寫一篇詳細(xì)的博文。例如,IPFS使用Merkle DAGs來表示文件和目錄。在這篇博文中,我們暫時(shí)只談基礎(chǔ)知識(shí)。
2. Filecoin
IPFS 背后的同一個(gè)團(tuán)隊(duì)創(chuàng)建了 Filecoin。它是一個(gè)建立在 IPFS 上的點(diǎn)對(duì)點(diǎn)網(wǎng)絡(luò),通過獎(jiǎng)勵(lì) Filecoin 的原生代FIL幣來激勵(lì)用戶出租未使用的存儲(chǔ)空間。
在 Filecoin 中,用戶為存儲(chǔ)空間付費(fèi),任何想要存儲(chǔ)其他用戶文件的人都可以加入 Filecoin 網(wǎng)絡(luò)并獲得報(bào)酬。
圖片來源:Filecoin[3]
3.Swarm
Swarm 是另一個(gè) DStorage 協(xié)議,它是以太坊三位一體的一部分:
? 用于計(jì)算能力的以太坊
? 用于消息傳遞的Whisper
? 用于存儲(chǔ)的Swarm
Swarm 提供了一個(gè)完整的 DStorage 基礎(chǔ)架構(gòu),允許來自世界各地的人們成為存儲(chǔ)提供商并獲得報(bào)酬。
它的創(chuàng)建者將 Swarm 設(shè)計(jì)為具有高度可擴(kuò)展性和彈性,并為需要高安全性和抗審查性的應(yīng)用程序提供平臺(tái)。
Swarm 的想法由 Gavin Wood 提出,其開發(fā)主要由以太坊基金會(huì)資助。
圖片來源:Swarm Docs[4]
IPFS 和 Swarm 之間的區(qū)別
雖然從高層次上看,這兩種協(xié)議可能看起來很相似,但當(dāng)我們深入研究這些協(xié)議背后的內(nèi)部工作原理和理念時(shí),就會(huì)存在細(xì)微差別。
他們之中有一些是:
? Swarm 的核心存儲(chǔ)組件使用不可變的內(nèi)容尋址塊存儲(chǔ),而 IPFS 使用分布式哈希表來查找哪些節(jié)點(diǎn)正在托管內(nèi)容。
哈希表是鍵到值的數(shù)據(jù)庫。分布式哈希表是在分布式網(wǎng)絡(luò)中的所有對(duì)等點(diǎn)之間拆分表的表。
? Swarm 在激勵(lì)系統(tǒng)上與以太坊深度結(jié)合,而 IPFS 沒有激勵(lì)系統(tǒng),而是利用 Filecoin 添加激勵(lì)層。
? 從開發(fā)的角度來看,IPFS 在代碼成熟度、采用和社區(qū)參與方面比 Swarm 更進(jìn)一步。因此,IPFS 在文檔方面有很多可用的內(nèi)容。相比之下,Swarm 沒有龐大的文檔庫(哎呀,甚至我在研究 Swarm 時(shí)發(fā)現(xiàn)的信息都來自第三方博客??)。
↗? 這些協(xié)議之間有很多相同點(diǎn)和不同點(diǎn)。有關(guān)詳細(xì)信息,請(qǐng)查看此wiki[5](雖然有點(diǎn)過時(shí)
4.Arweave
Arweave 是一個(gè)去中心化存儲(chǔ)平臺(tái),它使用一種稱為 blockweave 的新數(shù)據(jù)結(jié)構(gòu)。Blockweaves 允許 Arweave 提供可擴(kuò)展、有彈性和高效的存儲(chǔ)。
那么,什么是 Blockweaves?
我們都知道,區(qū)塊鏈只是包含交易數(shù)據(jù)的鏈接塊鏈。Blockweaves 類似于區(qū)塊鏈,因?yàn)樗鼈兪菂^(qū)塊鏈,但它具有連接到網(wǎng)絡(luò)中多個(gè)先前區(qū)塊的存儲(chǔ)數(shù)據(jù)。
圖片來源:Arweave 白皮書[6]
Blockweaves 強(qiáng)制礦工為舊數(shù)據(jù)提供“訪問證明”以添加新塊。
與更傳統(tǒng)的區(qū)塊鏈不同,礦工花費(fèi)計(jì)算能力和電力并競(jìng)爭(zhēng)挖掘區(qū)塊以賺取代幣,Arweave 網(wǎng)絡(luò)鼓勵(lì)礦工存儲(chǔ)和復(fù)制有價(jià)值的數(shù)據(jù)以賺取代幣。
Permaweb
與傳統(tǒng)網(wǎng)絡(luò)一樣,Permaweb 是永久存儲(chǔ)的互連文檔和應(yīng)用程序的集合。Permaweb 位于 Arweave 數(shù)據(jù)存儲(chǔ)層之上。
由于 Arweave 網(wǎng)絡(luò)是建立在 HTTP 之上的,就像傳統(tǒng)的網(wǎng)絡(luò)一樣,網(wǎng)絡(luò)瀏覽器可以訪問存儲(chǔ)在網(wǎng)絡(luò)中的數(shù)據(jù)。
圖片來源:Arweave 文檔[7]
5.Storj
Storj 是一個(gè) DStorage 平臺(tái),可提供安全、可擴(kuò)展、私有、高效且與 S3 兼容的去中心化云對(duì)象存儲(chǔ)。
與其他 DStorage 平臺(tái)一樣,Storj 將擁有未使用帶寬和存儲(chǔ)空間的人與需要廉價(jià)、可訪問和私有文件存儲(chǔ)的人聯(lián)系起來。
Storj 使用 ERC-20 代幣 STORJ 來激勵(lì)人們出租帶寬和存儲(chǔ)空間。
6.Sia
Sia 是另一個(gè)流行的去中心化云存儲(chǔ)平臺(tái),它在點(diǎn)對(duì)點(diǎn)網(wǎng)絡(luò)中連接租用者(租用存儲(chǔ)空間來托管他們的文件和應(yīng)用程序)和主機(jī)(將存儲(chǔ)空間借給租用者)。Sia 擁有自己的區(qū)塊鏈,主辦方將獲得 Sia 自己的本地實(shí)用程序代幣 SiaCoin 作為獎(jiǎng)勵(lì)。
一旦承租人將他們的文件上傳到 Sia 網(wǎng)絡(luò),它就會(huì)被分割、加密并發(fā)送到世界各地。網(wǎng)絡(luò)通過制作多個(gè)副本確保文件始終可訪問。
由于文件被分成多個(gè)部分并被加密,主機(jī)無法訪問它們。
結(jié)論
隨著過去十年集中式存儲(chǔ)網(wǎng)絡(luò)和集中式云服務(wù)(如 Google 和 AWS)的主流采用,為個(gè)人和組織提供快速且廉價(jià)的存儲(chǔ)基礎(chǔ)設(shè)施,信息完整性、隱私和審查制度的威脅無處不在。
DStorage 模型通過在節(jié)點(diǎn)網(wǎng)絡(luò)中分布數(shù)據(jù)來解決集中存儲(chǔ)的問題,每個(gè)節(jié)點(diǎn)都存儲(chǔ)數(shù)據(jù)的副本。
這使其更能抵抗審查和攻擊,具有比傳統(tǒng)存儲(chǔ)系統(tǒng)更好的信息完整性和數(shù)據(jù)可用性。
推薦資源
?去中心化云存儲(chǔ)詳解[8]- Leeway Hertz
?IPFS 文檔[9]
?Filecoin 文檔[10]
?Swarm文檔[11]
?Arweave 白皮書[12]
原文鏈接:https://blog.developerdao.com/a-gentle-introduction-to-decentralized-storage