• <option id="cacee"><noscript id="cacee"></noscript></option>
  • <table id="cacee"><noscript id="cacee"></noscript></table>
  • <td id="cacee"></td>
  • <option id="cacee"></option>
  • <table id="cacee"></table>
  • <option id="cacee"><option id="cacee"></option></option>
  • <table id="cacee"><source id="cacee"></source></table><td id="cacee"><rt id="cacee"></rt></td>
    <option id="cacee"><option id="cacee"></option></option>
     找回密碼
     立即注冊

    掃一掃,登錄網站

    首頁 區塊鏈生態 查看內容
    • 8089
    • 0
    • 分享到

    【觀點】從HTTP到IPFS,星際文件系統能變革信息傳播的方式嗎?

    2018-8-23 13:19

    來源: 鏈得得

    分析IPFS的極簡主義


    2014年5月,墨西哥小哥Juan Benet與他的幾個斯坦福大學同學一起發明了IPFS。在創辦IPFS之前,Juan Benet是典型的國外常春藤學生極客,有一個開掛般的人生。他是斯坦福大學的本科和碩士畢業,在斯坦福讀碩士的期間就參與創立了Loki studios,擔任聯合創始人和CTO,這是一家手游公司,后來被雅虎收購。2011年入駐斯坦福學生創業孵化中心StartX EIR,2012年,畢業后創辦了Athena,這是一個做了一年多的時間后,于2014年5月份創辦Protocal Labs。
       
    Protocal Labs剛以創立就得以加入美國硅谷頂級孵化器Y-Combinator,IPFS是他們做的第一個產品。Protocol Labs 在創建IPFS的時候給它取名為“InterPlanetary File System(星際文件傳輸)”也是有深刻含義的。Protocol Labs希望構建一個點對點的分布式文件系統,通過底層協議,讓全世界所有人都能夠輕松從IPFS系統上提取文件,且不受防火墻的影響。甚至如果科技發展到一定程度,需要進行星球與星球信息傳輸時,IPFS也可以提供快速存儲文件的服務。

    1.存儲

    在IPFS中,信息可以存儲進IPFS系統中的塊(block)里,這些塊可以存儲至多256kb的數據,它們還可以鏈接其他IPFS塊。也就是說,存儲小于256kb的文件時,只需將這個文件放進一個塊內就可以了。而大于256kb的文件會被分成多個256kb然后放進塊中,之后IPFS將創建一個空塊,該塊將鏈接到文件的所有其他部分。這個空塊就類似于一個大信封,里面會涵蓋整個文件的所有部分。

    系統會給同一個文件的每一個塊計算一次哈希值a,所有塊的哈希值a計算完畢之后,會將所有的哈希值a拼湊成一個數組b,再計算一次哈希值,從而得到最終的哈希值c。最后把最終的哈希值c和原文件捆綁起來,組成一個對象,從而形成一個索引結構d。把塊和最終的索引結構d上傳至IPFS節點,文件便同步到網絡了。

    此外,還有一種小于1kb的小文件,如果這些小文件也單獨放進一個塊里的話,也會造成一定的浪費。于是,IPFS把小于1kb的數據內容直接和哈希索引放在一起上傳給IPFS節點,不會再額外的占用一個塊。

    可見IPFS的創作理念,是盡可能少的使用存儲空間,盡量分散的存儲文件。另外,對于相同的文件,IPFS只創建一個文件夾,系統也會自動刪除重復的文件,并修改的版本歷史記錄,這樣可以大大節省存儲空間,保證整個系統的運行速度,并保證存儲文件的安全,和使用的便捷。

    2.讀取

    同樣作為信息價值交換的基礎,用戶在IPFS上傳或者使用文件時,不再是基于位置的尋址(Location based addressing),而是基于內容的尋址(Content based addressing)。也就是把“去哪找信息”的指令換成“想找什么內容”的指令。

    在互聯網內,下載文件或者瀏覽信息需要一個IP地址或者域名,而在IPFS內,每個文件都有自己的哈希值,并且一個哈希值只對應一個文件。不存在一個文件有多個哈希值,或者多個哈希值對應同一個文件的問題。因而,用戶只需在IPFS內輸入需要文件的哈希值,系統就會出現對應的文件。這些文件是分布存儲的,所以只要有一個用戶有對應的文件,就算部分節點罷工或者不在線,也不會影響文件的讀取。

    具體在IPFS系統種下載文件時,首先,需要礦工根據最終哈希數值搜索該哈希的索引結構,并下載下來。然后,用戶就可以根據哈希索引搜索到文件所在的節點位置。用戶將節點上的塊下載下來之后,IPFS將根據哈希數組的順序,把文件重新組合出來,用戶就可以使用了。

    可以看出,IPFS將文件細分,使上傳略顯復雜,其目的是使用戶在下載時更加便捷。畢竟,小文件的下載比大文件來得更加簡單方便。

    版權申明:本內容來自于互聯網,屬第三方匯集推薦平臺。本文的版權歸原作者所有,文章言論不代表鏈門戶的觀點,鏈門戶不承擔任何法律責任。如有侵權請聯系QQ:3341927519進行反饋。
    相關新聞
    發表評論

    請先 注冊/登錄 后參與評論

      回頂部
    • <option id="cacee"><noscript id="cacee"></noscript></option>
    • <table id="cacee"><noscript id="cacee"></noscript></table>
    • <td id="cacee"></td>
    • <option id="cacee"></option>
    • <table id="cacee"></table>
    • <option id="cacee"><option id="cacee"></option></option>
    • <table id="cacee"><source id="cacee"></source></table><td id="cacee"><rt id="cacee"></rt></td>
      <option id="cacee"><option id="cacee"></option></option>
      妖精视频