@[toc]
IPFS項目介紹
IPFS介紹:星際文件系統(tǒng)IPFS(Inter-Planetary File System)是一個面向全球的、點對點的分布式版本文件系統(tǒng),目標是為了補充(甚至是取代)目前統(tǒng)治互聯(lián)網(wǎng)的超文本傳輸協(xié)議(HTTP),將所有具有相同文件系統(tǒng)的計算設(shè)備連接在一起。原理用基于內(nèi)容的地址替代基于域名的地址,也就是用戶尋找的不是某個地址而是儲存在某個地方的內(nèi)容,不需要驗證發(fā)送者的身份,而只需要驗證內(nèi)容的哈希,通過這樣可以讓網(wǎng)頁的速度更快、更安全、更健壯、更持久。
IPFS是什么
星際文件系統(tǒng)IPFS(The InterPlanetary File System),是一種點對點的分布式文件系統(tǒng),可能大部分互聯(lián)網(wǎng)用戶對它都很陌生,不過就像很多人使用了十幾年的超文本傳輸協(xié)議(HyperText Transfer Protocol,簡稱HTTP),每次打開網(wǎng)頁都需要輸入也不清楚它具體是什么。
IPFS也是一種底層協(xié)議,通過底層協(xié)議,可以讓存儲在IPFS系統(tǒng)上的文件,在全世界任何一個地方快速提取,不受到防火墻的影響,讓用戶訪問數(shù)據(jù)的速度更快,更加安全,并且更加開放。
互聯(lián)網(wǎng)得以快速發(fā)展建立在HTTP協(xié)議上的,超文本傳輸協(xié)議(HTTP)的設(shè)計目的是保證客戶機器與服務器之間的通信,打個比方,客戶端的瀏覽器向服務器提交HTTP請求,然后服務器向客戶端再返回響應,這是互聯(lián)網(wǎng)誕生以來沿用至今的一種方式。但隨著互聯(lián)網(wǎng)用戶量級的改變,以及越來越多的網(wǎng)絡(luò)安全問題的凸顯,互聯(lián)網(wǎng)發(fā)展到了今天,HTTP也開始逐漸暴露出不足。
HTTP作為一種底層協(xié)議并不是非常安全的,它是一種明文傳輸協(xié)議,但它并無法加密數(shù)據(jù)。大部分的普通互聯(lián)網(wǎng)用戶其實都沒有足夠的能力對自己的瀏覽行為進行安全性的保護。因此當瀏覽器用戶與網(wǎng)站進行HTTP鏈接時,兩者之間傳輸?shù)臄?shù)據(jù)容易被窺視、竊取甚至篡改。
IPFS是使用內(nèi)容尋找地址,內(nèi)容作為唯一的表示去進行訪問,并且會提前檢驗這個標識是否被儲存過,如果它之前已經(jīng)被存儲過了,那么就直接從其他節(jié)點讀取,這樣就不需要重復存儲,解決了存儲空間浪費的問題。
IPFS的特性在應用層面讓它與當下大熱的區(qū)塊鏈完美結(jié)合。區(qū)塊鏈的本質(zhì)是分布式賬本,解決的傳統(tǒng)賬本的存儲能力,可以在一定程度上為傳統(tǒng)應用程序提供分布式緩存方案。
IPFS的產(chǎn)生背景及應用
HTTP超文本傳輸協(xié)議從1999年創(chuàng)立以來,對整個互聯(lián)網(wǎng)行業(yè)的發(fā)展起到了無法替代的作用。但是中心化存儲的互聯(lián)網(wǎng)運行機制下,運營成本高、效率低、安全性差、數(shù)據(jù)易丟失等缺陷也是無法避免以及正在解決的問題。
為了改變現(xiàn)在互聯(lián)網(wǎng)的種種弊端,斯坦福大學畢業(yè)的胡安·貝尼特于2015年創(chuàng)立協(xié)議實驗室,發(fā)布了IPFS(星際文件系統(tǒng)),目標就是取代HTTP,成為下一代互聯(lián)網(wǎng)底層通信協(xié)議。
IPFS(Inter-Planetary File System)即星際文件系統(tǒng),是一種基于內(nèi)容尋址、版本化、點對點的超媒體傳輸協(xié)議,集合了P2P網(wǎng)絡(luò)技術(shù)、BitTorrent傳輸技術(shù)、Git版本控制、自證明文件系統(tǒng)等技術(shù),對標Http的新一代通信協(xié)議。
IPFS從根本上改變了用戶搜索的方式。我們知道,通過HTTP瀏覽器搜索文件的時候,首先找到服務器位置,然后使用路徑名稱在服務器上查找文件,但是通過協(xié)議IPFS,用戶可以直接搜索內(nèi)容。這里是怎么實現(xiàn)呢?
首先,IPFS網(wǎng)絡(luò)里的文件,會被賦予一個哈希值,這個哈希值類似于我們的身份證號,他是獨一無二的,它是從文件內(nèi)容中被計算出來的。
然后,當用戶向IPFS分布式網(wǎng)絡(luò)詢問哈希的時候,它通過使用一個分布式哈希表,可以快速地找到擁有數(shù)據(jù)的節(jié)點,從而檢索到該數(shù)據(jù)。簡單來講,就是以前我們是通過跳轉(zhuǎn)多層網(wǎng)站才能找到一個文件,但是在IPFS上存儲的文件,我們只需查詢它的哈希值,便能快速找到。
IPFS對于一些大的文件,它會自動將其切割為一些小塊,使IPFS節(jié)點不僅僅可以像HTTP一樣從一臺服務器上下載文件,而且可以從數(shù)百臺服務器上進行同步下載。所以,只要所存儲的節(jié)點通電且網(wǎng)絡(luò)正常,那么這個訪問速度就可以非???。
IPFS和區(qū)塊鏈有什么區(qū)別?
IPFS和區(qū)塊鏈的區(qū)別主要包括:
1、區(qū)塊鏈是一種記錄交易數(shù)據(jù)并在區(qū)塊中維護歷史的技術(shù)。IPFS旨在取代HTTP,它是一種協(xié)議和網(wǎng)絡(luò),設(shè)計用于共享和存儲媒體的點對點方法。
2、區(qū)塊鏈技術(shù)不適合存儲大量數(shù)據(jù)。IPFS由需要可公開訪問的數(shù)據(jù)庫的區(qū)塊鏈應用程序使用,IPFS將大量數(shù)據(jù)存儲在不同的節(jié)點上,它使用區(qū)塊鏈的通證經(jīng)濟(其激勵層Filecoin)來保持這些節(jié)點在線。
3、在區(qū)塊鏈上輸入數(shù)據(jù)后; 它無法更新或刪除,使用先前塊散列函數(shù)的鏈接創(chuàng)建新塊。在IPFS中,只有在另一個節(jié)點選擇不重新托管時,才能刪除網(wǎng)絡(luò)數(shù)據(jù)。同時,IPFS支持版本控制。
4、區(qū)塊鏈將數(shù)據(jù)存儲在具有數(shù)據(jù),哈希函數(shù)和先前哈希的塊中。文件存儲在IPFS對象中。這些對象可以存儲高達256kb的數(shù)據(jù),還可以鏈接到其他IPFS對象文件存儲在IPFS對象中。這些對象可以存儲高達256kb的數(shù)據(jù),還可以鏈接到其他IPFS對象。
這些特性使IPFS成為分布式存儲數(shù)據(jù)的理想場所,可以使用區(qū)塊鏈技術(shù)進行參考和時間戳。
IPFS不是區(qū)塊鏈項目,但其激勵層Filecoin是名副其實的區(qū)塊鏈項目。
Filecoin是運行在IPFS上的一個激勵層,是一個基于區(qū)塊鏈的分布式存儲網(wǎng)絡(luò),它把云存儲變?yōu)橐粋€算法市場,代幣(FIL)在這里起到了很重要的作用。代幣是溝通資源(存儲和檢索)使用者(IPFS用戶)和資源的提供者(Filecoin礦工)之間的中介橋梁,F(xiàn)ilecoin協(xié)議擁有兩個交易市場—數(shù)據(jù)檢索和數(shù)據(jù)存儲,交易雙方在市場里面提交自己的需求,達成交易。IPFS和Filecoin相互促進,共同成長,解決了互聯(lián)網(wǎng)的數(shù)據(jù)存儲和數(shù)據(jù)分發(fā)的問題,特別是對于無數(shù)的區(qū)塊鏈項目,IPFS和Filecoin將作為一個基礎(chǔ)設(shè)施存在。這就是為什么我們看到越來越多的區(qū)塊鏈項目采取了IPFS作為存儲解決方案,因為它提供了更加便宜、安全、可快速集成的存儲解決方案。
IPFS為區(qū)塊鏈帶來什么變化?
區(qū)塊鏈的誕生本是為了做到去中心化,在沒有中心機構(gòu)的情況下達成共識,共同維護一個賬本。它的設(shè)計動機并不是為了高效、低能耗,抑或是擁有可擴展性(如果追求高效、低能耗和擴展性,中心化程序可能是更好的選擇)。
IPFS與區(qū)塊鏈協(xié)同工作,能夠補充區(qū)塊鏈的兩大缺陷:一是區(qū)塊鏈存儲效率低,成本高;二是跨鏈需要各個鏈之間協(xié)同配合,難以協(xié)調(diào)。
IPFS生態(tài)
應用層 Dapp
采用IPFS技術(shù)的DAPP示意圖
DAPP示例
(1)Openbazaar 是個開源的開放集市(c2c),沒有中心服務器,靠的是分布式節(jié)點自動維護,交易付款用BTC,交易雙方是匿名;網(wǎng)站沒有沒有域名,它并不是使用域名訪問的,而是使用類似區(qū)塊鏈技術(shù)的onename。
在1.0版本,OpenBazaar被稱之為“黑市”,那時沒有應用IPFS,利用ZeroMQ來實現(xiàn)P2P交易,把交易的手續(xù)費作為紅利給到用戶,同時它用比特幣作為支付渠道而轟動一時,用戶數(shù)量在短時間內(nèi)迅速提升。
在2.0版本發(fā)布后,加入了一層審查機制,同時支持了比特幣之外的BCH等數(shù)字貨幣,并且整合與重構(gòu)IPFS,取代了之前的ZeroMQ。
現(xiàn)在,集市上眾多的商店在沒有用戶上線的情況下,也可以在主機上就被運行。以前必須同時登陸才可以交易,現(xiàn)在利用IPFS相當于實現(xiàn)了離線店鋪,這意味著,訪問你店鋪的人越多,店鋪數(shù)據(jù)被復制越多,有利于優(yōu)質(zhì)的店鋪宣傳和推廣,這也是一定意義上的價值回歸。
(2)PeerPad是協(xié)作的實時編輯器,它不使用第三方,所有參與節(jié)點直接對話,不需要中央服務器。同時Peerpad開源,展示了開發(fā)者如何使用IPFS建立自己的無服務器的、實時的、離線優(yōu)先的多人協(xié)作的分布式應用程序,由協(xié)議實驗室和IPFS社區(qū)建立??蓪崿F(xiàn)四種功能:
1、會議筆記
無論是使用純文本、Markdown還是富文本,你都可以實時地與同事分享會議記錄。
2、協(xié)作或共享代碼片段
Peerpad有一個內(nèi)置的代碼編輯器,可以在編輯同一個文件時使用它與同事協(xié)作。
3、寫文章并分享
您可以發(fā)布一個pad的快照到IPFS,使其在internet上可用。通過共享解密內(nèi)容的讀取密鑰來選擇與誰共享。
4、與多個用戶同時協(xié)作
Peerpad可以與許多用戶同時修改文檔,實時處理彼此的變化。
IPFS應用層目前還多為當前互聯(lián)網(wǎng)商業(yè)業(yè)務突出的產(chǎn)品的區(qū)塊鏈版,有音視頻娛樂服務、電子商務等,但結(jié)合IPFS特性及中心化社會的痛點,未來但凡涉及‘數(shù)據(jù)量大’、‘帶寬壓力’、‘數(shù)據(jù)安全’、‘文件版本’等基本訴求的業(yè)務,皆向去中心化甚至IPFS靠攏,在這里做個窺探性前瞻。
網(wǎng)絡(luò)激勵層–Filecoin
目前IPFS激勵層應用在國內(nèi)外有多個項目在探索,最受關(guān)注的還是協(xié)議實驗室自搭建的Filecoin(文件幣),它的出現(xiàn)旨在提升IPFS協(xié)議在全球范圍內(nèi)被應用的廣度,這個普及推廣的過程需數(shù)年甚至數(shù)十年,F(xiàn)ilecoin自身也形成了一個應用生態(tài),包含了存儲網(wǎng)絡(luò)、經(jīng)濟體系、技術(shù)架構(gòu)等。
IPFS與Filecoin的關(guān)系
IPFS星際文件系統(tǒng)(InterPlanetary File System ),是個旨在創(chuàng)建持久且分布式存儲和共享文件的網(wǎng)絡(luò)傳輸協(xié)議。它是一種內(nèi)容可尋址的對等超媒體分發(fā)協(xié)議。
我們現(xiàn)在常用的這些APP、網(wǎng)站、朋友圈的數(shù)據(jù)都是放在中心化的服務器集群中存儲的,然后通過URL、URI、域名系統(tǒng)定位資源去訪問,而IPFS呢,不是基于這種域名尋址,而是內(nèi)容尋址,它會從一個資源的內(nèi)容計算出一個哈希值,這個值直接反應這個資源的內(nèi)容。一個IPFS客戶存儲一個大文件資源到IPFS網(wǎng)絡(luò),當該資源較大時IPFS通過對資源文件進行分片,分別計算哈希,并通過Merkle DAG(Git數(shù)據(jù)格式)對該資源文件進行組織,每個分片可能存在一個節(jié)點或多個節(jié)點,并且可能是多個副本來保證某些節(jié)點失效時還可以在其他節(jié)點取得文件分片。
Filecoin是一個去中心化存儲網(wǎng)絡(luò),也叫做Filecoin的區(qū)塊鏈,F(xiàn)ilecoin的代幣名稱為FIL。Filecoin與IPFS是兩個項目,IPFS是底層協(xié)議。FIlecoin區(qū)塊鏈中的礦工可以通過為客戶提供存儲來獲取FIL。相反的,客戶可以通過花費FIL雇傭礦工來存儲或分發(fā)數(shù)據(jù)。
Filecoin是基于IPFS進行 ICO的另外一個項目,本質(zhì)上來說 Filecoin是對 IPFS網(wǎng)絡(luò)的一個激勵層IPFS可以理解為一個BT軟件,那么BT軟件多年來一直未解決的問題就是如何激勵資源的貢獻者,如何激勵參與者提供更好的磁盤、更好的網(wǎng)絡(luò),提供給使用者更好的使用體驗和穩(wěn)定質(zhì)量。
Filecoin 去中心化存儲網(wǎng)絡(luò) (Decentralized Storage Network,簡稱DSN),在這個網(wǎng)路中準備構(gòu)建兩個市場分別為「存儲市場」和「檢索市場」,以此來獎勵存儲礦工提供更好質(zhì)量的存儲服務,同時在檢索市場激勵網(wǎng)絡(luò)較好或響應性能較好的礦工獲取獎勵。