在開始介紹什麼是IPFS前,我們先帶大家瞭解一下現行網路世界存在的問題。
現行網路世界存在的問題
對於現代人來說,網際網路已經是我們生活中不可或缺的必需品。但你是否有注意到,由於現行網路世界是高度中心化,網路控制權多掌握在政府、大企業手中,他們可以輕鬆地限制人們使用網路的權限。這裡舉個著名案例作為參考,2017 年土耳其政府曾以國家安全為由,封鎖維基百科,不讓國內人民使用。
除了中心化導致人們無法自由使用網路外,現有的網際網路協議HTTP也存在網頁不易保存問題,下面帶你了解什麼是HTTP?以及現有HTTP協議的缺點?
超文本傳輸協定HTTP
HTTP(HyperText Transfer Protocol)即超文本傳輸協定,是基於地址尋址的網際網路協議。地址尋址是指當我們想從網路下載一張圖片時,我們必須先透過HTTP協議給予該圖片一個地址(地址可能是IP地址、域名或文件系統路徑等),這樣電腦才能透過該地址找到這張圖片。
然而,HTTP協議下的網頁並非永久存在。根據統計現在平均網頁的壽命,大約只有100天左右,因此當網頁的地址連結失效時,人們就無法存取到網頁的資訊,我們也就無法找到這張圖片,而此時若點進這張圖片所在的網頁地址連結時,系統就會顯示「網頁不存在」(即大家熟悉的「404 error」畫面)。
什麼是IPFS 星際文件系統?
IPFS(InterPlanetary File System)中文名為星際文件系統,是一種分佈式網路文件存儲協議。IPFS是基於內容尋址的網際網路協議,主要用於存儲、尋找文件,它旨在取代HTTP協議而誕生的新世代網際網路協議,創辦團隊盼能藉由 IPFS 系統,打造更開放、安全且網速更快的網路世界。
什麼是內容尋址?
如前述提到過,由於HTTP協議具有網頁不易保存的缺點,一旦網頁連結失效時,人們便難以存取網頁內的資訊,此時若你的朋友剛好曾將這個網頁備份,而你就可以請他共享這個檔案給你,而這就是 IPFS 內容尋址的核心概念。
IPFS 透過網路上多個節點(即你的朋友,或礦工)同時進行存儲、備份文件,來達到當你需要某個文件時,系統可以直接從眾多節點中找到你所需要的文件檔案。
什麼是節點?
你可以將節點的概念想成連接點,主要用於提供接受、傳送或存儲數據的終端裝置(可以是電腦、手機、IPad,或者虛擬伺服器等)。節點與礦工的概念類似,只不過節點是指提供鏈上數據得以運作的單位(多數情況節點是具備計算機功能的物理設備),而礦工則是負責維持鏈上數據運作的人。
以比特幣來說,一位提供電腦算力並維持、更新總帳的礦工=一個節點
以IPFS來說,一位願意提供存儲、共享文件的用戶=一個節點
IPFS是如何在節點中尋找你想要文件內容?
在IPFS世界,每個文件背後都印上一個獨一無二的哈希值(即Hash)(你可以把哈希值想像成指紋),電腦通過識別這些哈希值,來辨識是否為你想要尋找的文件。並且一旦文件印上哈希值後,該哈希值就不會變更,因此我們可以透過驗證該文件背後的哈希值,來確定是否與自己需要的哈希值相同。若不相同也就代表他們並非同一個文件,而這就是IPFS內嵌防偽功能。
另外,透過哈希值來尋找文件還具備一大特點,那就是文件自動去除重複功能。IPFS 藉由類似指紋功能的哈希值,能快速地幫助系統找到並刪除相同文件,而此特點也讓 IPFS 具備更優秀的網路存儲性能。
關於 IPFS 與 HTTP 差異總結:
過去在使用地址尋址協議(即HTTP協議)時,我們需要一個地址才能讓電腦知道「要去哪裡才能找到檔案位置」,而內容尋址協議(即IPFS協議)則只需要告訴電腦「你需要什麼內容」,電腦就能透過文件背後的哈希值幫你找到你想要的資料。
現階段IPFS存在的問題
現階段 IPFS 還存在一些問題,那就是它無法保證能持續存儲文件。當負責存儲某個文件的節點剛好全部都斷線時,我們就無法獲得這個文件的數據了。因此對於IPFS而言,如何讓節點維持存儲、備份文件,便是IPFS是否能運作的關鍵。
為了改善這個問題 IPFS 開發團隊 Protocol Labs( 協議實驗室)推出代幣獎勵機制。只要能持續存儲文件並長期在線分享的用戶, Protocol Labs 就會給予這些用戶文件幣(Filecoin)作為獎勵,以便他們能持續在線提供存儲與共享文件數據的功能。
從整體來說,雖然IPFS受限於節點是否能持續提供存儲與資料共享服務,但IPFS大致已經進入穩定期,不太容易出現如前述提到,剛好所有節點都斷線導致無法提供文件數據的情況發生。因為透過Filecoin的獎勵機制,備份同一份文件的節點正不斷增加,從過去可能只有5個人備份同一份檔案,到現在可能擴增到50人,只要備份文件的節點愈多,IPFS的生態也就愈穩定。不過IPFS是否能完全取代HTTP協議,目前看來還需要讓IPFS再發展一段時間才能知曉。
看完本文後,若有任何問題也歡迎加入「Jcard 這咖」Line群討論,大家可以一起交流成長。若你還未註冊「Jcard這咖」會員,歡迎點擊此處立即加入我們,才不會錯過更多NFT最新資訊喔!
若還想知道更多區塊鏈資訊嗎?可參考: