作者簡介:董天一 ,IPFS/Filecoin中國區技術布道人 ,《IPFS指南》作者
畢業于北京大學軟體與微電子學院,資深區塊鍊技術開發者,現緻力于IPFS/Filecoin在中國的技術推廣,本文原載微信公衆号:IPFS指南(ipfs_guide)
小編最近經常接到一些開發者的咨詢,我想用IPFS來做開發,該怎麼提供解決方案(特别是對于區塊鍊項目)那麼今天我們就來說一下開發者面對IPFS和Filecoin的時候該如何選擇
小編一般都會問一些開發者:有資料分發需求麼?有資料存儲需求麼?
小編很久以前就已經寫過IPFS和Filecoin之間的聯系和差別:大家可以參考這篇文章---IPFS和Filecoin之間的愛情故事
####IPFS:資料的分發和定位(資料傳輸協定,類似HTTP協定)
- 傳輸:資料在節點之間進行傳輸 定位:
- 尋址,發現資料的存儲位置
- 存儲:自己提供存儲(可以保證存儲的安全性),其它節點不保證 資料存儲的安全性
- 使用者:下載下傳資料免費,自己提供伺服器,自己搭建節點 存儲内容:隻存儲節點自己感興趣的内容
####Filecoin: 資料存儲(類似一個雲存儲)
- 存儲:付費存儲,使用者付費,礦工和Filecoin網絡保證存儲的安全性
- 下載下傳:付費下載下傳,使用者付費,礦工負責發送資料
- 使用者:不需要自己提供存儲,也不需要自己提供節點
- 存儲内容:收費存儲一切 中,所有的樣式保持一緻。
從上圖上我們可以看到,libp2p以前是IPFS的一個重要元件,從7月份開始,libp2p已經被調整為和IPFS和Filecoin同一級别的項目。
IPFS和Filecoin共同依賴libp2p項目。
<span style="color: #AE87FA; ">Filecoin是IPFS的激勵層,二者互補形式一對協定。為我們的網際網路提供了很好的基礎設施。</span>
了解上述的基本内容後:
- 如果開發者僅僅想要的是一個安全、快速的雲存儲,那麼選擇Filecoin即可。
- 如果開發者除了資料存儲需求,還需要分發資料,那麼選擇IPFS即可。
- 如果開發者既有資料存儲需求,又有資料的分發需求,那麼可以單獨選擇IPFS,也可以IPFS+Filecoin一起。
注意:IPFS可以做Filecoin的事情,存儲,而filecoin并不能做IPFS的事情,資料傳輸
###借助于Filecoin,一種可能的區塊鍊資料存儲方案:
目前的所有區塊鍊資料存儲幾乎都是礦工的本地存儲。那麼區塊鍊的資料随着時間的增加不斷的增長。存儲的成本也會越來越高。對于區塊鍊一般可能會有兩種資料:區塊鍊資料和其它資料,其他資料可能是智能合約的代碼,也可能是Dapp的所需的檔案。
那麼有了Filecoin以後,礦工可以将區塊鍊資料存儲到Filecoin裡面,而在本地僅僅保留資料的哈希值,這樣本地存儲壓力就會大大降低,由于使用Filecoin存儲,存儲的成本也會下降很多。
那麼有朋友會問一個問題:存到filecoin裡面的資料還是我的資料麼?如果被修改了怎麼辦?
注意:Filecoin是一個雲存儲,由區塊鍊和哈希值保證資料不會被篡改。礦工可以把Filecoin看做是一個資料庫即可。至于真正的資料存在什麼地方,不用關心。如果做得更進一步,在區塊鍊裡面存儲共識的哈希值即可。
那麼問題來了:礦工把區塊資料存儲到亞馬遜的s3,或者是阿裡雲OSS,跟Filecoin有什麼不同?
單獨從存儲角度來講:沒有不同,都是存儲而已
但是Filecoin提供了區塊鍊所特有的特性,是其它雲存儲多不具備的,例如:資料不能被篡改,智能合約,加密等,總之你的資料你做主。從這個角度來講,礦工把資料存儲到Filecoin是更好的選擇。
由于軟體架構的設計并沒有一個統一的标準,還需要case by case的分析,來制定更好的方案,小編本文簡單的介紹了一下開發者從什麼角度去區分IPFS和Filecion使用,歡迎大家交流,提出更多的方案和建議。
相關文章和視訊推薦
【董天一】IPFS:Filecoin和複制證明
圓方圓學院彙集大批區塊鍊名師,打造精品的區塊鍊技術課程。 在各大平台都長期有優質免費公開課,歡迎報名收看。
公開課位址:https://ke.qq.com/course/345101?flowToken=1007371