五種去中心化的分布式存儲(chǔ)平臺(tái)介紹
掃描二維碼
隨時(shí)隨地手機(jī)看文章
區(qū)塊鏈和分布式技術(shù)的最重要一部分就是共識(shí)算法(整個(gè)網(wǎng)絡(luò)如何達(dá)成共同決策)和智能合約(用于執(zhí)行我們?cè)谶@個(gè)中心化世界中每天使用的應(yīng)用程序)。
但是當(dāng)我們?cè)谑褂萌粘?yīng)用程序時(shí),這些屬性是不足以滿足當(dāng)今世界的需求。如果只具備上述兩種屬性,想在優(yōu)酷Netflix上面觀看喜歡的電影/電視劇、在社交網(wǎng)絡(luò)facebook上面存儲(chǔ)/記錄視頻/圖片、或是在區(qū)塊鏈上面玩你最喜歡的游戲,比如DOTA、LOL等,這一切都將很難實(shí)現(xiàn)。
我們現(xiàn)在所缺失的是一個(gè)強(qiáng)大的、安全的且去中心化的內(nèi)容存儲(chǔ)和分布式系統(tǒng),來為當(dāng)前數(shù)以億計(jì)的應(yīng)用程序提供數(shù)據(jù)存儲(chǔ)的服務(wù)。
下面我們將探索并評(píng)估一些最受歡迎的分布式存儲(chǔ)平臺(tái)(IPFS、Swarm、Sia、Storj、MaidSafe),由于篇幅較長(zhǎng),我們將分成上下部分。
1. IPFS
狀態(tài):已上線(其激勵(lì)系統(tǒng),“Filecoin”尚未上線)
闡述:IPFS(星際文件系統(tǒng))一種點(diǎn)對(duì)點(diǎn)(p2p)文件共享系統(tǒng),旨在從根本上改變信息在全球各地的分布方式。
IPFS由通信協(xié)議和分布式系統(tǒng)中的部分創(chuàng)新演變而生,這些創(chuàng)新已被組合以產(chǎn)生與眾不同的文件系統(tǒng)。因此,要全面了解IPFS試圖實(shí)現(xiàn)的廣度和深度,重要的是要了解將其實(shí)現(xiàn)的技術(shù)突破以及它試圖解決的所有問題。
IPFS的最終目的是取代HTTP,那么,讓我們來看看現(xiàn)今的互聯(lián)網(wǎng)是如何運(yùn)作的。
簡(jiǎn)而言之,互聯(lián)網(wǎng)是一組描述數(shù)據(jù)如何在網(wǎng)絡(luò)中移動(dòng)的協(xié)議。開發(fā)人員隨著時(shí)間的推移采用這些協(xié)議,并在此基礎(chǔ)架構(gòu)之上構(gòu)建應(yīng)用程序。作為Web主干的協(xié)議之一是HTTP即超文本傳輸協(xié)議,這是由Tim Berners-Lee于1991年發(fā)明的。
HTTP是一個(gè)請(qǐng)求-響應(yīng)的協(xié)議,客戶端(例如Web瀏覽器)向外部服務(wù)器發(fā)送請(qǐng)求, 然后,服務(wù)器將響應(yīng)消息(例如,Google主頁)返回給客戶端, 這是一個(gè)位置尋址協(xié)議,意味著當(dāng)我將google.com鍵入我的瀏覽器時(shí),它會(huì)被轉(zhuǎn)換為某個(gè)Google服務(wù)器的IP地址,然后該服務(wù)器會(huì)啟動(dòng)請(qǐng)求 - 響應(yīng)周期。
HTTP的問題
假設(shè)你正坐在演講廳,教授要求你去訪問指定的網(wǎng)站。講座中的每個(gè)學(xué)生都向該網(wǎng)站提出請(qǐng)求并得到回復(fù)。這意味著相同的準(zhǔn)確數(shù)據(jù)會(huì)單獨(dú)發(fā)送給屋子里的每個(gè)學(xué)生。如果有100名學(xué)生,則有100個(gè)請(qǐng)求和100個(gè)回復(fù)。這顯然不是最有效的做事方式。理想情況下,學(xué)生將能夠利用他們的物理距離優(yōu)勢(shì)來更有效地檢索他們所需的信息。
如果網(wǎng)絡(luò)通信線路中存在某些問題并且客戶端無法與服務(wù)器連接,則HTTP也會(huì)出現(xiàn)大問題。如果ISP發(fā)生中斷,某個(gè)國家/地區(qū)禁止某些內(nèi)容,或者內(nèi)容只是被刪除或移動(dòng),就會(huì)發(fā)生這種情況。這些類型的斷開鏈接存在HTTP Web上隨處可見。
HTTP的基于位置的尋址模型鼓勵(lì)中心化,使用我們的所有數(shù)據(jù)信任少數(shù)幾個(gè)應(yīng)用程序很方便,但由于這一點(diǎn),網(wǎng)絡(luò)上的大部分?jǐn)?shù)據(jù)都變得很混亂,這使得這些提供商對(duì)我們的信息負(fù)有巨大的責(zé)任和權(quán)力(例如facebook)。
HTTP非常適合加載網(wǎng)站,但它不是為傳輸大量數(shù)據(jù)(如音頻和視頻文件)而設(shè)計(jì)的。這些限制可能使Napster(音樂共享服務(wù))和BitTorrent(電影共享服務(wù))等替代文件共享系統(tǒng)的出現(xiàn)和主流成功。
快進(jìn)到2018年,按需高清視頻流和大數(shù)據(jù)正在變得無處不在; 我們正在繼續(xù)向上生產(chǎn)/消耗越來越多的數(shù)據(jù),以及開發(fā)越來越強(qiáng)大的計(jì)算機(jī)來處理數(shù)據(jù)。 云計(jì)算的重大進(jìn)步有助于維持這種轉(zhuǎn)變,但分發(fā)所有這些數(shù)據(jù)的基礎(chǔ)架構(gòu)基本保持不變。
解決方案
IPFS最初是由Juan Benet努力構(gòu)建一個(gè)能夠快速遷移版本化科學(xué)數(shù)據(jù)的系統(tǒng)。它是經(jīng)過充分測(cè)試的互聯(lián)網(wǎng)技術(shù)的綜合,如DHT,Git版本系統(tǒng)和Bittorrent。 它創(chuàng)建了一個(gè)P2P群,允許交換IPFS對(duì)象。 IPFS對(duì)象的總體形成加密認(rèn)證的數(shù)據(jù)結(jié)構(gòu),稱為Merkle DAG,并且該數(shù)據(jù)結(jié)構(gòu)可用于模擬許多其他數(shù)據(jù)結(jié)構(gòu)。 或者換句話說。..。..
IPFS是一種分布式文件系統(tǒng),旨在將所有計(jì)算設(shè)備與相同的文件系統(tǒng)連接起來。在某些方面,這類似于Web的原始目標(biāo),但I(xiàn)PFS實(shí)際上更類似于交換git對(duì)象的單個(gè)bittorrent群。 IPFS可以成為互聯(lián)網(wǎng)的一個(gè)新的主要子系統(tǒng)。如果搭建正確,它可以補(bǔ)充或替換HTTP,或許補(bǔ)充或替代更多,聽起來很瘋狂,是很瘋狂。
IPFS的核心是一個(gè)版本化文件系統(tǒng),它可以接收文件并對(duì)其進(jìn)行管理,并將它們存儲(chǔ)在某個(gè)地方,然后跟蹤版本。 IPFS還考慮了這些文件如何在網(wǎng)絡(luò)中移動(dòng),因此它也是一個(gè)分布式文件系統(tǒng)。
IPFS規(guī)定了數(shù)據(jù)和內(nèi)容如何在網(wǎng)絡(luò)上移動(dòng),其性質(zhì)與bittorrent相似。此文件系統(tǒng)層提供了非常有趣的屬性,例如:
完全分布式的網(wǎng)站。
沒有原始服務(wù)器的網(wǎng)站。
可以完全在客戶端瀏覽器上運(yùn)行的網(wǎng)站。
沒有任何服務(wù)器可以與之交談的網(wǎng)站。
讓我們看看這些不同的技術(shù)突破如何協(xié)同工作。
分布式哈希表
哈希表是將信息存儲(chǔ)為鍵/值對(duì)的數(shù)據(jù)結(jié)構(gòu)。在分布式哈希表(DHT)中,數(shù)據(jù)分布在計(jì)算機(jī)網(wǎng)絡(luò)上,并且有效地協(xié)調(diào)以實(shí)現(xiàn)節(jié)點(diǎn)之間的有效訪問和查找。
DHT的主要優(yōu)點(diǎn)是去中心化,容錯(cuò)和可擴(kuò)展性。節(jié)點(diǎn)不需要集中協(xié)調(diào),即使節(jié)點(diǎn)發(fā)生故障或離開網(wǎng)絡(luò),系統(tǒng)也能可靠地運(yùn)行,DHT可以擴(kuò)展以容納數(shù)百萬個(gè)節(jié)點(diǎn)。這些特征共同導(dǎo)致系統(tǒng)通常比客戶端 - 服務(wù)器結(jié)構(gòu)更具彈性。
區(qū)塊交換
流行的文件共享系統(tǒng)Bittorrent能夠通過依賴創(chuàng)新的數(shù)據(jù)交換協(xié)議成功協(xié)調(diào)數(shù)百萬個(gè)節(jié)點(diǎn)之間的數(shù)據(jù)傳輸,但它僅限于torrent生態(tài)系統(tǒng)。 IPFS實(shí)現(xiàn)了該協(xié)議的通用版本,稱為BitSwap,它作為任何類型數(shù)據(jù)的市場(chǎng)運(yùn)行。這個(gè)市場(chǎng)是Filecoin的基礎(chǔ):一個(gè)基于IPFS的p2p存儲(chǔ)市場(chǎng)。
Merkle DAG
merkle DAG是Merkle樹和有向無環(huán)圖(DAG)的混合體。 Merkle樹確保在p2p網(wǎng)絡(luò)上交換的數(shù)據(jù)塊是正確的,未損壞的和不變的。 通過使用加密哈希函數(shù)組織數(shù)據(jù)塊來完成此驗(yàn)證。 這只是一個(gè)函數(shù),它接受輸入并計(jì)算與該輸入相對(duì)應(yīng)的唯一字母數(shù)字字符串(哈希)。 很容易檢查輸入是否會(huì)產(chǎn)生給定的哈希值,但很難猜測(cè)哈希的輸入。
各個(gè)數(shù)據(jù)塊稱為“葉節(jié)點(diǎn)”,它們被散列形成“非葉節(jié)點(diǎn)”。 然后可以組合和散列這些非葉節(jié)點(diǎn),直到所有數(shù)據(jù)塊可以由單個(gè)根哈希表示。這是一種更簡(jiǎn)單的概念化方法:
DAG是一種模擬沒有周期的拓?fù)湫畔⑿蛄械姆椒ā?DAG的簡(jiǎn)單示例是族譜。 merkle DAG基本上是一種數(shù)據(jù)結(jié)構(gòu),其中哈希用于引用DAG中的數(shù)據(jù)塊和對(duì)象。 這創(chuàng)建了幾個(gè)有用的功能:IPFS上的所有內(nèi)容都可以唯一標(biāo)識(shí),因?yàn)槊總€(gè)數(shù)據(jù)塊都有唯一的哈希。 此外,數(shù)據(jù)是防篡改的,因?yàn)楦淖償?shù)據(jù)就會(huì)改變哈希,如下所示:
IPFS的核心原則是對(duì)廣義Merkle DAG上的所有數(shù)據(jù)進(jìn)行建模。這種安全功能的重要性很難夸大。用一個(gè)例子來表明這個(gè)想法有多么強(qiáng)大,價(jià)值數(shù)萬億美元的資產(chǎn)受到這一原則的保護(hù)。
版本控制系統(tǒng)
Merkle DAG結(jié)構(gòu)的另一個(gè)強(qiáng)大功能是它允許您構(gòu)建分布式版本控制系統(tǒng)(VCS)。最受歡迎的例子是Github,允許開發(fā)人員輕松地同時(shí)協(xié)作項(xiàng)目。 Github上的文件使用merkle DAG進(jìn)行存儲(chǔ)和版本化。允許用戶獨(dú)立復(fù)制和編輯文件的多個(gè)版本,存儲(chǔ)這些版本并且稍后將編輯文件與原始文件合并。
IPFS對(duì)數(shù)據(jù)對(duì)象使用類似的模型:只要響應(yīng)于原始數(shù)據(jù)的對(duì)象和任何新版本都可訪問,就可以檢索整個(gè)文件歷史記錄。鑒于數(shù)據(jù)塊通過網(wǎng)絡(luò)本地存儲(chǔ)并且可以無限期緩存,這意味著可以永久存儲(chǔ)IPFS對(duì)象。
此外,IPFS不依賴于對(duì)Internet協(xié)議的訪問。 數(shù)據(jù)可以分布在覆蓋網(wǎng)絡(luò)中,覆蓋網(wǎng)絡(luò)只是構(gòu)建于另一個(gè)網(wǎng)絡(luò)之上的網(wǎng)絡(luò)。 這些特點(diǎn)值得注意,因?yàn)檫@是抗審查網(wǎng)絡(luò)的核心要素。 可以成為促進(jìn)言論自由以對(duì)抗全球互聯(lián)網(wǎng)審查普及程度的有用工具,但我們也應(yīng)該認(rèn)識(shí)到不良行為者可能濫用言論。
自我認(rèn)證文件系統(tǒng)
我們將介紹的IPFS的最后一個(gè)重要組成部分是自我認(rèn)證文件系統(tǒng)(SFS)。它是一個(gè)分布式文件系統(tǒng),不需要特殊的數(shù)據(jù)交換權(quán)限。它是“自我認(rèn)證”的,因?yàn)樘峁┙o客戶端的數(shù)據(jù)是通過文件名(由服務(wù)器簽名)進(jìn)行身份驗(yàn)證的。結(jié)果?您可以利用本地存儲(chǔ)的透明性安全地訪問遠(yuǎn)程內(nèi)容。
IPFS以此概念為基礎(chǔ),創(chuàng)建了星際名稱空間(IPNS)。它是一個(gè)SFS,使用公鑰加密技術(shù)來自我認(rèn)證網(wǎng)絡(luò)用戶發(fā)布的對(duì)象。我們之前提到IPFS上的所有對(duì)象都可以唯一標(biāo)識(shí),但這也會(huì)擴(kuò)展到節(jié)點(diǎn)。網(wǎng)絡(luò)上的每個(gè)節(jié)點(diǎn)都有一組公鑰,私鑰和一個(gè)節(jié)點(diǎn)ID,是其公鑰的哈希值。因此,節(jié)點(diǎn)可以使用其私鑰來“簽署”他們發(fā)布的任何數(shù)據(jù)對(duì)象,并且可以使用發(fā)件人的公鑰來驗(yàn)證此數(shù)據(jù)的真實(shí)性。
以下是關(guān)鍵IPFS組件的快速回顧:
使用分布式哈希表,節(jié)點(diǎn)可以存儲(chǔ)和共享數(shù)據(jù),而無需中央?yún)f(xié)調(diào)。
IPNS允許使用公鑰加密技術(shù)立即預(yù)先驗(yàn)證和驗(yàn)證交換的數(shù)據(jù)。
Merkle DAG可實(shí)現(xiàn)唯一標(biāo)識(shí),防篡改和永久存儲(chǔ)的數(shù)據(jù)。
可以通過ConsenSys查看有關(guān)文件如何在網(wǎng)絡(luò)中分發(fā)的更多信息(深入了解)。
2. Swarm
狀態(tài):已上線
說明:
Swarm是一種分布式存儲(chǔ)平臺(tái)和內(nèi)容分發(fā)服務(wù),是以太坊web3堆棧的本地基礎(chǔ)層服務(wù)。 Swarm的主要目標(biāo)是為以太坊的公共記錄提供充分去中心化和冗余的存儲(chǔ),特別是存儲(chǔ)和分發(fā)dapp代碼和數(shù)據(jù)以及區(qū)塊鏈數(shù)據(jù)。 從經(jīng)濟(jì)角度來看,它允許參與者有效地匯集其存儲(chǔ)和帶寬資源,以便為所有網(wǎng)絡(luò)參與者提供這些服務(wù),同時(shí)受到以太坊的激勵(lì)。
目的
Swarm更全面的目標(biāo)是為去中心化網(wǎng)絡(luò)應(yīng)用程序(dapps)的開發(fā)人員提供基礎(chǔ)設(shè)施服務(wù),特別是:消息傳遞,數(shù)據(jù)流,點(diǎn)對(duì)點(diǎn)管賬,可變資源更新,存儲(chǔ)保險(xiǎn),監(jiān)管掃描和維修證明,支付渠道和數(shù)據(jù)庫服務(wù)。
從最終用戶的角度來看,除了上傳不托管在特定服務(wù)器上,Swarm與萬維網(wǎng)沒有什么不同。 Swarm提供點(diǎn)對(duì)點(diǎn)存儲(chǔ)和服務(wù)解決方案,具有DDoS抗性,零停機(jī),容錯(cuò)和抗審查以及自我維護(hù)的特點(diǎn),因?yàn)閮?nèi)置的激勵(lì)系統(tǒng)使用點(diǎn)對(duì)點(diǎn)管賬并允許交易資源進(jìn)行支付。 Swarm旨在與以太坊的devp2p多協(xié)議網(wǎng)絡(luò)層以及以太網(wǎng)區(qū)塊鏈進(jìn)行深度集成,以進(jìn)行域名解析(使用ENS),服務(wù)支付和內(nèi)容可用性保險(xiǎn)。
注意:為了解析ENS名稱,您的Swarm節(jié)點(diǎn)必須連接到以太坊區(qū)塊鏈(主網(wǎng)或測(cè)試網(wǎng))。
請(qǐng)參閱我們的發(fā)展路線圖,隨時(shí)了解swarm的進(jìn)展情況。
概述
Swarm旨在為新的去中心化互聯(lián)網(wǎng)提供基礎(chǔ)層基礎(chǔ)架構(gòu)。 Swarm是節(jié)點(diǎn)的點(diǎn)對(duì)點(diǎn)網(wǎng)絡(luò),通過向彼此提供資源(存儲(chǔ),消息轉(zhuǎn)發(fā),支付處理)來提供分布式數(shù)字服務(wù)。以太坊基金會(huì)運(yùn)行Swarm測(cè)試網(wǎng)絡(luò),可用于以類似于以太坊測(cè)試網(wǎng)(ropsten)的方式測(cè)試功能。每個(gè)人都可以通過在其服務(wù)器,臺(tái)式機(jī),筆記本電腦或移動(dòng)設(shè)備上運(yùn)行Swarm客戶端節(jié)點(diǎn)來加入網(wǎng)絡(luò)。有關(guān)如何執(zhí)行此操作,請(qǐng)參閱Swarm入門。 Swarm客戶端是以太坊堆棧的一部分,參考實(shí)現(xiàn)是用golang編寫的,可以在go-ethereum存儲(chǔ)庫中找到。目前Swarm正在POC(概念證明)0.3版本所有節(jié)點(diǎn)上運(yùn)行。
Swarm提供了一個(gè)本地HTTP代理API,dapp或命令行工具可以使用其與Swarm交互。某些模塊(如消息傳遞)僅可通過RPC-JSON API獲取。測(cè)試網(wǎng)上的基礎(chǔ)服務(wù)器提供公共網(wǎng)關(guān),用于輕松演示功能并允許自由訪問,以便人們可以在不運(yùn)行自己的節(jié)點(diǎn)的情況下嘗試Swarm。
Swarm是devp2p網(wǎng)絡(luò)的節(jié)點(diǎn)集合,每個(gè)節(jié)點(diǎn)在相同的網(wǎng)絡(luò)ID上運(yùn)行bzz協(xié)議組件。
swarm節(jié)點(diǎn)還可以與一個(gè)(或多個(gè))以太坊區(qū)塊鏈連接以進(jìn)行域名解析,并使用一個(gè)以太坊區(qū)塊鏈進(jìn)行帶寬和存儲(chǔ)補(bǔ)償。運(yùn)行相同網(wǎng)絡(luò)ID的節(jié)點(diǎn)應(yīng)該連接到相同的區(qū)塊鏈進(jìn)行支付。Swarm網(wǎng)絡(luò)由其網(wǎng)絡(luò)id標(biāo)識(shí),該網(wǎng)絡(luò)id是任意整數(shù)。
Swarm允許上傳和離開,這意味著任何節(jié)點(diǎn)都可以只將內(nèi)容上傳到Swarm,然后允許其離線。只要節(jié)點(diǎn)不丟失或不可用,由于節(jié)點(diǎn)在彼此之間連續(xù)傳遞可用數(shù)據(jù)的“同步”過程,內(nèi)容仍然可以訪問。
公共網(wǎng)關(guān)
Swarm提供了一個(gè)本地HTTP代理API,Dapp可以使用它與Swarm進(jìn)行交互。以太坊基金會(huì)正在托管一個(gè)公共網(wǎng)關(guān),允許免費(fèi)訪問,以便人們可以在不運(yùn)行自己的節(jié)點(diǎn)的情況下嘗試使用Swarm。
可以在https://swarm-gateways.net找到Swarm公共網(wǎng)關(guān),并始終運(yùn)行最新的穩(wěn)定Swarm版本。
注意:此網(wǎng)關(guān)目前僅接受有限大小的上傳。在未來,可能無法上傳到此網(wǎng)關(guān)。
上傳和下載數(shù)據(jù)
上傳內(nèi)容包括將內(nèi)容“上傳”到你的本地Swarm節(jié)點(diǎn),然后你的本地Swarm節(jié)點(diǎn)將所生成的數(shù)據(jù)塊與網(wǎng)絡(luò)中的節(jié)點(diǎn)“同步”。同時(shí),下載內(nèi)容包括你的本地Swarm節(jié)點(diǎn)查詢網(wǎng)絡(luò)中的節(jié)點(diǎn)以獲取相關(guān)數(shù)據(jù)塊,然后在本地重新組合內(nèi)容。
內(nèi)容解析器:ENS
注意:為了解析ENS名稱,你的Swarm節(jié)點(diǎn)必須連接到以太坊區(qū)塊鏈(主網(wǎng)或測(cè)試網(wǎng))。
ENS是Swarm用于允許通過可讀名稱引用內(nèi)容的系統(tǒng),例如“theswarm.eth”。它的操作類似于DNS系統(tǒng),將可讀名稱轉(zhuǎn)換為機(jī)器標(biāo)識(shí)符 - 在本例中,是你引用內(nèi)容的Swarm哈希值。通過注冊(cè)名稱并將其設(shè)置為解析你網(wǎng)站根目錄的內(nèi)容哈希,用戶可以通過bzz://theswarm.eth/等網(wǎng)址訪問您的網(wǎng)站。
注意:目前主流瀏覽器(如Chrome,F(xiàn)irefox或Safari)不支持bzz方案。如果您想通過這些瀏覽器訪問bzz方案,目前您必須使用HTTP網(wǎng)關(guān),例如https://swarm-gateways.net/bzz:/theswarm.eth/或使用支持bzz方案的瀏覽器,如Mist。
可變資源更新
可變資源更新是一個(gè)高度實(shí)驗(yàn)性的功能,可從Swarm POC3獲得。 目前正在積極開發(fā),所以讓我們靜觀其變。
我們之前在本指南中已經(jīng)了解到,當(dāng)我們?cè)赟warm中對(duì)數(shù)據(jù)進(jìn)行更改時(shí),上傳該數(shù)據(jù)時(shí)返回的哈希將以完全不可預(yù)測(cè)的方式發(fā)生變化。 通過可變資源更新,Swarm提供了一種內(nèi)置方法,可以為不斷變化的數(shù)據(jù)保留永久標(biāo)識(shí)符。
保持指向更改數(shù)據(jù)的指標(biāo)的常用方法是使用以太坊名稱服務(wù)ENS。 但是,ENS是一個(gè)鏈上功能,它限制了某些領(lǐng)域的功能:
1. 每次更新ENS解析器都會(huì)花費(fèi)你的燃料來執(zhí)行。
2. 更改數(shù)據(jù)的速度不可能比新塊的開采速度更快。
3. 正確的ENS解析要求你始終同步到區(qū)塊鏈。
可變資源更新允許我們?cè)诓槐厥褂肊NS的情況下為變更數(shù)據(jù)提供非變量標(biāo)識(shí)符??梢允褂脛?chuàng)建資源時(shí)獲得的密鑰(MRU_MANIFEST_KEY),像常規(guī)Swarm對(duì)象一樣引用可變資源。更新資源的數(shù)據(jù)時(shí),MRU_MANIFEST_KEY將指向新數(shù)據(jù)。
如果將可變資源更新與ENS解析器合約一起使用,則只需要一個(gè)初始交易來注冊(cè)MRU_MANIFEST_KEY。此密鑰將解析為最新版本的資源(更新資源不會(huì)更改密鑰)。
與Mutable資源更新有3種不同的交互方式:HTTP API,Golang API和Swarm CLI。
需要注意的事項(xiàng):
只有創(chuàng)建資源的私鑰(地址)才能更新。
創(chuàng)建可變資源時(shí),必須提供的參數(shù)之一是預(yù)期的更新頻率。指的是你的資源更新的頻率(以秒為單位)。雖然您可以以其他速率更新資源,但這樣做會(huì)減慢檢索資源的過程。
Swarm數(shù)據(jù)加密
現(xiàn)在,在POC 0.3中引入了對(duì)稱加密,可以與swarm up上傳命令一起使用。加密機(jī)制旨在保護(hù)您的信息,并使得分塊數(shù)據(jù)對(duì)于任何Swarm控制節(jié)點(diǎn)都不可讀。
Swarm使用Counter模式加密來加密和解密內(nèi)容。將內(nèi)容上傳到Swarm時(shí),上傳的數(shù)據(jù)將拆分為4 KB塊。這些塊將全部使用分別隨機(jī)生成的加密密鑰進(jìn)行編碼。在本地Swarm節(jié)點(diǎn)上加密,未加密的數(shù)據(jù)不與其他節(jié)點(diǎn)共享。單個(gè)塊(以及整個(gè)內(nèi)容)的引用將是編碼數(shù)據(jù)的哈希和解密密鑰的連接。這意味著引用將比標(biāo)準(zhǔn)的未加密Swarm引用(64字節(jié)而不是32字節(jié))更長(zhǎng)。
當(dāng)你的節(jié)點(diǎn)將內(nèi)容的加密塊與其他節(jié)點(diǎn)同步時(shí),不會(huì)與其他節(jié)點(diǎn)共享完整引用(或任何方式的解密密鑰)。這意味著其他節(jié)點(diǎn)將無法訪問你的原始數(shù)據(jù),而且他們將無法檢測(cè)同步的塊是否已加密。
檢索數(shù)據(jù)時(shí),只會(huì)在本地Swarm節(jié)點(diǎn)上解密。在整個(gè)檢索過程中,塊以加密形式遍布網(wǎng)絡(luò),并且沒有參與的節(jié)點(diǎn)能夠?qū)⑵浣饷堋K鼈儍H在您用于下載的Swarm節(jié)點(diǎn)上解密和匯編。
需要注意的事項(xiàng):
Swarm支持加密。由于無法撤消上傳,因此強(qiáng)烈建議不要上傳未加密的敏感數(shù)據(jù)和私有數(shù)據(jù)。用戶應(yīng)避免上傳非法,有爭(zhēng)議或不道德的內(nèi)容。
Swarm目前通過使用--encrypt標(biāo)志支持加密和未加密的swarm up命令。這在將來可能會(huì)發(fā)生變化。
加密功能是非確定性的(由于在每個(gè)上傳請(qǐng)求中生成隨機(jī)密鑰),API的用戶不應(yīng)該依賴于等冪結(jié)果;因此,在啟用加密的情況下將相同內(nèi)容兩次上載到Swarm將不會(huì)產(chǎn)生相同的引用。
PSS
pss(Swarm上的Postal Service)是一種基于Swarm的消息傳遞協(xié)議,具有強(qiáng)大的隱私功能。 pss API通過API Reference中描述的JSON RPC接口公開,這里我們解釋了基本概念和功能。
注意:pss仍然是一個(gè)實(shí)驗(yàn)性功能,正在積極開發(fā)中,可從Swarm的POC3開始使用。敬請(qǐng)期待更新。
基本概念
使用pss,您可以將消息發(fā)送到Swarm網(wǎng)絡(luò)中的任何節(jié)點(diǎn)。消息的路由方式與檢索塊請(qǐng)求的方式相同。 pss消息不是塊哈希引用,而是在覆蓋地址空間中指定目的地,而與消息有效負(fù)載無關(guān)。如果特定節(jié)點(diǎn)是完整的覆蓋地址,則該目的地可以描述該特定節(jié)點(diǎn),如果部分指定了一個(gè)節(jié)點(diǎn),則到該目的地之前,使用轉(zhuǎn)發(fā)kademlia通過devp2p對(duì)等連接中繼消息(使用kademlia路由通過中繼節(jié)點(diǎn)之間的半永久性對(duì)等TCP連接傳遞消息)。在目的地鄰域內(nèi),使用gossip廣播消息。
由于pss消息是加密的,因此最終接收者是可以解密消息的人。 可以使用非對(duì)稱或?qū)ΨQ加密方法來完成加密。
消息有效負(fù)載由接收方節(jié)點(diǎn)分派給消息處理程序,并通過API分派給訂戶。
注意:pss不保證此時(shí)的消息排序(盡力傳遞)和消息傳遞(例如,不會(huì)緩存和重放到脫機(jī)節(jié)點(diǎn)的消息)。
隱私功能
由于端到端加密,pss適合私人通信。
由于轉(zhuǎn)發(fā)kademlia,pss提供發(fā)件人匿名服務(wù)。
使用部分尋址,pss提供了收件人匿名的浮動(dòng)比例:目標(biāo)鄰域越大(顯示的預(yù)期收件人覆蓋地址的前綴越?。?,識(shí)別真實(shí)收件人就越困難。 另一方面,由于暗路由效率低,因此在匿名性與消息傳遞延遲和帶寬(因此成本)之間存在折衷。 這個(gè)選擇留給應(yīng)用程序。
如果使用Handshakes模塊,則提供轉(zhuǎn)發(fā)保密服務(wù)。
注意事項(xiàng):
始終對(duì)敏感內(nèi)容使用加密!對(duì)于加密內(nèi)容,上傳數(shù)據(jù)是“受保護(hù)的”,即只有那些了解對(duì)根塊的引用(文件的swarm哈希以及解密密鑰)才能訪問內(nèi)容的。由于發(fā)布此引用(在ENS或MRU上)需要其他步驟,因此只要用戶使用加密,就可以輕松地確保用戶不會(huì)手誤發(fā)布。即使不能保證刪除,尚未確保安全性的未訪問內(nèi)容最終也會(huì)從Swarm中消失,因?yàn)楣?jié)點(diǎn)將被激勵(lì),以便在存儲(chǔ)容量限制的情況下對(duì)其進(jìn)行垃圾回收。
在執(zhí)行存儲(chǔ)保險(xiǎn)之前,不保證上傳的內(nèi)容會(huì)持久存儲(chǔ)在測(cè)試網(wǎng)上(有關(guān)詳細(xì)信息,請(qǐng)參閱路線圖)。所有參與節(jié)點(diǎn)都應(yīng)該考慮參與志愿服務(wù)而沒有任何正式義務(wù),并且應(yīng)該按照他們的意愿刪除內(nèi)容。因此,在激勵(lì)系統(tǒng)運(yùn)行之前,用戶在任何情況下都不應(yīng)將Swarm視為安全存儲(chǔ)。
Swarm是一個(gè)持久數(shù)據(jù)結(jié)構(gòu),因此在Swarm中沒有刪除操作的概念。這是因?yàn)閮?nèi)容被傳播到被激勵(lì)的swarm節(jié)點(diǎn)以提供服務(wù)。
3. SIA
狀態(tài):已上線
闡述:
SIA為租用者提供訪問去中心化云存儲(chǔ)平臺(tái),以便利用更便宜,更快捷的方式使用對(duì)任何人開放且不受單一權(quán)威來源管理的數(shù)據(jù)中心。 Siacoin基于獨(dú)立的Sia區(qū)塊鏈,并在存儲(chǔ)租用者和提供者之間達(dá)成協(xié)議。
文件在上傳之前被劃分
Sia軟件在上傳之前將文件分為30個(gè)段,每個(gè)段都用于分發(fā)給世界各地的托管方。 此分發(fā)確保沒有托管方會(huì)出現(xiàn)單點(diǎn)故障,并加強(qiáng)了整體網(wǎng)絡(luò)正常運(yùn)行時(shí)間和冗余。
文件段是使用名為Reed-Solomon擦除編碼的技術(shù)創(chuàng)建的,通常用于CD和DVD。 擦除編碼允許Sia以冗余方式劃分文件,其中30個(gè)段中的任何10個(gè)段可以完全恢復(fù)用戶的文件。
這意味著如果30個(gè)托管方中有20個(gè)離線,Sia用戶仍然可以下載他/她的文件。
每個(gè)文件段都是加密的
在離開租用者計(jì)算機(jī)之前,每個(gè)文件段都是加密的。 這可確保托管方僅存儲(chǔ)加密的用戶數(shù)據(jù)段。
這與亞馬遜等傳統(tǒng)云存儲(chǔ)提供商不同,后者默認(rèn)不加密用戶數(shù)據(jù)。 Sia比現(xiàn)有解決方案更安全,因?yàn)橥泄芊街淮鎯?chǔ)加密的文件段,而不是整個(gè)文件。
Sia使用Twofish算法,這是一種開源和安全加密標(biāo)準(zhǔn),是高級(jí)加密標(biāo)準(zhǔn)(AES)競(jìng)賽的決勝者。
使用智能合約將文件發(fā)送給托管方
使用Sia區(qū)塊鏈,租用者與托管方形成文件合約。 這些合約規(guī)定了租用者和托管方之間的定價(jià),正常運(yùn)行時(shí)間承諾和其他方面的關(guān)系。
文件合約是一種智能合約。 允許我們創(chuàng)建存儲(chǔ)在Sia區(qū)塊鏈中的加密服務(wù)級(jí)別協(xié)議(SLA)。
由于文件合約由網(wǎng)絡(luò)自動(dòng)執(zhí)行,因此Sia不需要中介或受信任的第三方。
租用者和托管方使用Siacoin支付
租用者和托管方都使用Siacoin,這是一種基于Sia區(qū)塊鏈的獨(dú)特加密貨幣。 租用者使用Siacoin購買托管方的存儲(chǔ)容量,而托管方將Siacoin存入每個(gè)文件合約作為抵押品。
微支付使用稱為支付渠道的技術(shù)在租用者和托管方之間產(chǎn)生資產(chǎn)流動(dòng),這類似于比特幣的閃電網(wǎng)絡(luò)。 租用者和托管方之間的付款發(fā)生在鏈外,大大提高了網(wǎng)絡(luò)效率和可擴(kuò)展性。 您可以在此處查看有關(guān)付款渠道的詳情:
由于托管方為每個(gè)存儲(chǔ)合同支付抵押品,因此它們對(duì)離線具有很強(qiáng)的抑制作用。
每當(dāng)用戶和托管服務(wù)提供商在Sia上簽訂合約時(shí),用戶必須提供津貼(以支付托管費(fèi)用),并且托管服務(wù)提供商必須存入押金(以確保良好的行為)。合約訂立后,軟件將收取3.9%的津貼和押金,并支付給Siafunds的持有人,Siafunds是協(xié)議的次要代幣。制定協(xié)議的公司Nebulous Labs擁有約90%的Siafunds。
這當(dāng)然是一個(gè)有趣的長(zhǎng)期融資模式,是當(dāng)今流行的“一次性”ICO模式的替代品;但是,此功能可能會(huì)給系統(tǒng)帶來結(jié)構(gòu)成本,使其比競(jìng)爭(zhēng)對(duì)手費(fèi)用更高。文件存儲(chǔ)可能是一個(gè)競(jìng)爭(zhēng)激烈的市場(chǎng),顯著降低了價(jià)格(與目前的中心化選項(xiàng)相比)。一旦部署了若干不同的去中心化云存儲(chǔ)平臺(tái),這些協(xié)議將不僅與中心化替代方案競(jìng)爭(zhēng),而且還將彼此競(jìng)爭(zhēng)。 Sia對(duì)津貼和押金分別征收3.9%的費(fèi)用,但在大多數(shù)合約中,兩項(xiàng)費(fèi)用均由用戶支付。其他協(xié)議沒有這種結(jié)構(gòu)成本,長(zhǎng)期看來這種方式更優(yōu)惠并且對(duì)用戶更具吸引力。
價(jià)格會(huì)發(fā)生變化,但您可以預(yù)計(jì)在109個(gè)Siacoins地區(qū)進(jìn)行支付或者可以選擇每個(gè)TB每月1美元的價(jià)格。
合同隨著時(shí)間的推移而更新
租用者進(jìn)行預(yù)付款以便在文件合約中存儲(chǔ),留出固定數(shù)量的Siacoin用于存儲(chǔ)和傳輸數(shù)據(jù)。文件合約通常為期90天。
當(dāng)Sia在某個(gè)到期窗口內(nèi)時(shí),會(huì)自動(dòng)續(xù)訂合約。如果合約沒有續(xù)簽,Sia會(huì)在合約期結(jié)束時(shí)將任何未使用的金額退還給租用者。
當(dāng)各個(gè)主機(jī)脫機(jī)時(shí),Sia會(huì)在文件修復(fù)的過程中自動(dòng)將租用者數(shù)據(jù)移動(dòng)到新托管方。
托管方提交存儲(chǔ)證明
在文件合約結(jié)束時(shí),托管方必須證明他/她正在存儲(chǔ)租用者的數(shù)據(jù)。稱為存儲(chǔ)證明。如果存儲(chǔ)證明在特定時(shí)間范圍內(nèi)出現(xiàn)在區(qū)塊鏈上,則托管方將收到付款。如果沒有,托管方將受到處罰。
通過稱為Merkle樹的技術(shù)實(shí)現(xiàn)存儲(chǔ)證明。 Merkle樹可以證明一小段數(shù)據(jù)是較大文件的一部分。這些證明的優(yōu)點(diǎn)是它們非常小,無論文件有多大。這很重要,因?yàn)樽C明永久存儲(chǔ)在區(qū)塊鏈中。
最后,Sia面臨著入門的重要障礙。目前,必須購買比特幣,使用它來購買Siacoins,并將Siacoins發(fā)送到Sia客戶端軟件以開始使用網(wǎng)絡(luò)。對(duì)于尚未持有加密貨幣的日常用戶,這是一個(gè)主要障礙。也為企業(yè)客戶提出了一個(gè)問題,因?yàn)槌鲇诒O(jiān)管和財(cái)務(wù)風(fēng)險(xiǎn)的原因,大多數(shù)企業(yè)仍然不愿意持有或交易加密貨幣。迄今為止,Sia團(tuán)隊(duì)沒有優(yōu)先考慮方案,可訪問性或我們自身的能力,也沒有表明這是一個(gè)重要的優(yōu)先事項(xiàng)。
注意事項(xiàng):
與Swarm和IPFS不同,Sia是一個(gè)分布式云存儲(chǔ)系統(tǒng)。它不專注于創(chuàng)建替代http的基礎(chǔ)架構(gòu),而是專注于為云存儲(chǔ)創(chuàng)建分布式,自我維持且價(jià)格優(yōu)惠的市場(chǎng)。
4. Storj
狀態(tài):已上線
闡述:
Storj(發(fā)音為:storage)旨在成為一個(gè)無法審查,監(jiān)控或停機(jī)的云存儲(chǔ)平臺(tái)。它是首個(gè)去中心化端到端加密云存儲(chǔ)平臺(tái)之一。
Storj由一系列互鎖件組成,共同構(gòu)成一個(gè)統(tǒng)一的系統(tǒng)。當(dāng)人們與該系統(tǒng)的各個(gè)部分進(jìn)行交互時(shí),他們對(duì)Storj的含義有了不同的看法。家庭用戶不需要任何Bridge或協(xié)議知識(shí)來共享存儲(chǔ)空間,并且開發(fā)人員不需要知道有關(guān)家庭用戶的任何信息以便使用Storj API。每個(gè)人在與同一系統(tǒng)交互時(shí)都可以擁有截然不同的體驗(yàn)。那么Storj是什么?它是一個(gè)協(xié)議,一套軟件,也是設(shè)計(jì),構(gòu)建和使用它的人。
Storj協(xié)議
Storj的核心技術(shù)是可執(zhí)行的點(diǎn)對(duì)點(diǎn)存儲(chǔ)合約。這是兩個(gè)人(或計(jì)算機(jī))同意在不了解對(duì)方的情況下交換一定數(shù)量的存儲(chǔ)空間的方式。我們稱計(jì)算機(jī)銷售空間為“礦工”,計(jì)算機(jī)購買空間為“租用者”。租用者和礦工會(huì)面,協(xié)商協(xié)議,并將數(shù)據(jù)從租用者轉(zhuǎn)移到礦工處進(jìn)行保管。
合約和審計(jì)
合約有一定的期限。在這段時(shí)間內(nèi),租用者會(huì)定期檢查礦工是否仍然有閑置空間。礦工用加密證明回答仍在保留文件。最后,租用者向礦工支付其收到并驗(yàn)證過的每份證明。該挑戰(zhàn)過程 - 》證明 - 》付款被稱為“審計(jì)”,因?yàn)樽庥谜哒趯徍说V工的存儲(chǔ)。在合約期結(jié)束時(shí),礦工和租用者可以自由地重新協(xié)商或結(jié)束這種關(guān)系。
雖然核心技術(shù)允許任何類型的支付,但某些類型比其他類型更適合。傳統(tǒng)的支付系統(tǒng),如ACH或SEPA,非常不適合按審計(jì)付費(fèi)。它們很慢,很難驗(yàn)證,并且通常會(huì)收取高昂的費(fèi)用。 Storj協(xié)議的理想支付方式是加密貨幣微支付渠道。支持小額付款,可立即驗(yàn)證和安全,費(fèi)用最低。意味著付款和審核可以盡可能地配對(duì)。
執(zhí)行遵循一個(gè)簡(jiǎn)單的針鋒相對(duì)模式:如果礦工未通過審核,即離線或無法證明她仍然擁有數(shù)據(jù),則租用者無需支付。畢竟,他沒有繼續(xù)得到相應(yīng)的服務(wù)。同樣,如果租用者離線或未能按時(shí)付款,礦工可以放棄數(shù)據(jù),并向其他人尋找新的合約。只要雙方都遵守合約條款,大家就可以愉快地結(jié)束交易。
將付款直接與審計(jì)配對(duì)可以最大限度地降低與陌生人交易的風(fēng)險(xiǎn)。如果文件在合約期內(nèi)中途被丟棄, 則租用者僅按審計(jì)證明支付實(shí)際執(zhí)行的服務(wù)。 他需要找到新的礦工,但不能花費(fèi)太多。如果租用者消失或停止向礦工付款,那么礦工已經(jīng)收到了她以前所有服務(wù)的費(fèi)用。 只損失一筆審計(jì)費(fèi)用,以及找到新租用者購買該空間所需的時(shí)間。
Storj網(wǎng)絡(luò)
為了使租用者和礦工能夠相互遇見,合約和談判系統(tǒng)建立在分布式哈希表(DHT)之上。 DHT基本上是將一系列節(jié)點(diǎn)自我組織成有用網(wǎng)絡(luò)的一種方式。我們正在使用名為Kademlia的算法的修改版本。
DHT不是讓中央服務(wù)器注冊(cè)每個(gè)節(jié)點(diǎn)并協(xié)調(diào)所有合約,而是讓礦工和租用者將他們的合約通知廣播到大量節(jié)點(diǎn)。感興趣的節(jié)點(diǎn)可以輕松聯(lián)系提供合約的人。通過這種方式,礦工和租用者可以找到任意數(shù)量的潛在合作伙伴,并在廣泛的無權(quán)市場(chǎng)上購買或出售存儲(chǔ)空間。
為了尋找合作伙伴,節(jié)點(diǎn)可以簽署不完整的合約并將其發(fā)布到網(wǎng)絡(luò)。網(wǎng)絡(luò)上的其他節(jié)點(diǎn)可以訂閱某些類型的合約(即他們可能感興趣的類型)并響應(yīng)這些發(fā)布的報(bào)價(jià)。該模型稱為publish-subscribe或pub / sub。節(jié)點(diǎn)可以輕松確定他們感興趣的合約,并將合約轉(zhuǎn)發(fā)給他們認(rèn)為可能感興趣的其他節(jié)點(diǎn)。
總之,合約系統(tǒng)和網(wǎng)絡(luò)共同構(gòu)成了我們所謂的Storj協(xié)議。它描述了網(wǎng)絡(luò)上的節(jié)點(diǎn)如何運(yùn)作,節(jié)點(diǎn)如何與其他節(jié)點(diǎn)通信,協(xié)議如何協(xié)商和執(zhí)行,以及在分布式系統(tǒng)上買賣存儲(chǔ)空間所需的一切。任何人都可以以任何方式實(shí)施Storj協(xié)議。
Storj工具箱
該協(xié)議包含安全地制定存儲(chǔ)合約所需的所有工具,但它缺少很多東西。它是有作用的,但還沒有開始使用。為了方便租用者使用,系統(tǒng)需要以服務(wù)水平協(xié)議(SLA)的形式提供可用性,帶寬和任何數(shù)量的其他承諾。交易軟件需要管理功能,以避免使用過多的資源和自動(dòng)化功能來有效地部署到多個(gè)主機(jī)。 Storj沒有嘗試將所有這些功能融入核心協(xié)議,而是選擇在其他軟件層中解決這些問題。為了使這個(gè)網(wǎng)絡(luò)有用并且易于與之交互,Storj發(fā)布了兩個(gè)工具:Storj Share和Bridge。
Storj分享
Storj分享是參考交易客戶端。它允許用戶在任何機(jī)器上輕松設(shè)置和運(yùn)行服務(wù)器場(chǎng)。 StorjShare可作為命令行界面(CLI)提供給更高級(jí)的用戶并實(shí)現(xiàn)自動(dòng)化。 CLI允許用戶設(shè)置參數(shù),例如要共享的存儲(chǔ)空間量,存儲(chǔ)位置和付款地址。它還處理合同協(xié)商,審計(jì)響應(yīng)和所有其他網(wǎng)絡(luò)通信。
Storj還發(fā)布了StorjShare圖形用戶界面(GUI),以簡(jiǎn)化非技術(shù)用戶的交易過程。任何人都可以下載StorjShare GUI,填寫幾個(gè)字段,然后進(jìn)入網(wǎng)絡(luò)。 GUI是CLI的一個(gè)包裝器,可以完成所有繁重的操作。初始設(shè)置后,用戶很少需要與StorjShare GUI進(jìn)行互動(dòng)??梢赃M(jìn)行設(shè)置,最小化,并讓其在后臺(tái)運(yùn)行。
如果用戶選擇進(jìn)行數(shù)據(jù)收集,StorjShare還將收集系統(tǒng)遙測(cè)。 此數(shù)據(jù)可能包括硬盤容量和利用率以及有關(guān)網(wǎng)絡(luò)連接質(zhì)量的信息。 遙測(cè)數(shù)據(jù)被發(fā)送回Storj Labs,以便Storj開發(fā)人員可以使用這些數(shù)據(jù)來改進(jìn)網(wǎng)絡(luò)和我們的軟件。 在未來,StorjShare甚至可以讓人們選擇加入特殊服務(wù)和計(jì)劃。
Bridge
為了幫助租用者使用網(wǎng)絡(luò),Storj還創(chuàng)建了Bridge。 Bridge旨在部署到生產(chǎn)服務(wù)器,以處理合同協(xié)商,審計(jì),付款,可用性和許多其他需求。 Bridge通過擴(kuò)展,應(yīng)用程序編程接口(API)和客戶端的存儲(chǔ)資源公開這些服務(wù)。客戶端旨在集成到其他應(yīng)用程序中,以便任何應(yīng)用程序都可以使用Bridge服務(wù)器在Storj網(wǎng)絡(luò)上存儲(chǔ)數(shù)據(jù),而無需成為網(wǎng)絡(luò)的一部分。
顧名思義,Bridge是去中心化Storj網(wǎng)絡(luò)的中心化橋梁。它的目標(biāo)是允許傳統(tǒng)應(yīng)用程序與Storj網(wǎng)絡(luò)交互,就像使用任何其他對(duì)象存儲(chǔ)一樣。它提煉了p2p通信和存儲(chǔ)合同協(xié)商的所有復(fù)雜性來推送和拉取請(qǐng)求。與大多數(shù)對(duì)象存儲(chǔ)不同,Bridge不直接處理對(duì)象,而是處理對(duì)象的引用。它存儲(chǔ)指向分布式網(wǎng)絡(luò)上對(duì)象位置,以及審計(jì)這些對(duì)象所需的信息。理想情況下,沒有數(shù)據(jù)通過Bridge傳輸,而是直接傳輸?shù)骄W(wǎng)絡(luò)上的礦工。
Bridge Client處理所有客戶端工作以有效地使用網(wǎng)絡(luò)。它在文件進(jìn)入網(wǎng)絡(luò)時(shí)對(duì)文件進(jìn)行加密,保護(hù)隱私和安全。為了確保可用性,它會(huì)對(duì)文件進(jìn)行分片,應(yīng)用擦除編碼,并將分片傳播給多個(gè)礦工。然后,客戶端與Bridge通信以管理網(wǎng)絡(luò)上的每個(gè)分片位置,并幫助用戶在本地管理其加密密鑰。雖然Bridge Client的初始實(shí)現(xiàn)是Node.js包,但最終目標(biāo)是提供多語言版本。
Storj API
Storj核心服務(wù)是對(duì)象存儲(chǔ),類似于Amazon S3。此對(duì)象存儲(chǔ)由一組公共Bridge節(jié)點(diǎn)管理。我們維護(hù)基礎(chǔ)架構(gòu)以協(xié)商合約,管理付款,審計(jì)等。我們的客戶通過Bridge Client與我們的Bridge進(jìn)行交互,甚至不必知道他們正在使用分布式網(wǎng)絡(luò)。 API是為可用性而設(shè)計(jì)的,因此在后臺(tái)處理所有復(fù)雜的內(nèi)容,以提供流暢,可擴(kuò)展的開發(fā)體驗(yàn)。
Storj利用其廣泛的網(wǎng)絡(luò)知識(shí)提供一流的服務(wù)質(zhì)量。Bridge做出的決定是基于與無數(shù)礦工的歷史互動(dòng)。 Storj使用與其性能相關(guān)的數(shù)據(jù)以及他們自我報(bào)告的遙測(cè)數(shù)據(jù)來智能地在網(wǎng)絡(luò)上分發(fā)數(shù)據(jù)。 Storj優(yōu)化了高正常運(yùn)行時(shí)間以及快速檢索。
帳戶管理功能可通過Bridge Client或Storj的精美網(wǎng)絡(luò)應(yīng)用程序獲得。同樣,GUI的功能使體驗(yàn)盡可能順暢。 Storj認(rèn)為大多數(shù)面向開發(fā)人員的服務(wù)都忽略了用戶體驗(yàn)(UX),因此,他們?cè)谠O(shè)計(jì)產(chǎn)品時(shí)考慮了簡(jiǎn)單性和可用性。他們的目標(biāo)是提供一種細(xì)致的用戶體驗(yàn),而不是提供廣泛的云計(jì)算和存儲(chǔ)服務(wù)。
使用Storj API,他們正在嘗試為像我們這樣的開發(fā)人員構(gòu)建理想的工具:關(guān)注時(shí)間原型,高質(zhì)量代碼和快速迭代的人。他們希望為小型團(tuán)隊(duì),快速擴(kuò)展的產(chǎn)品和個(gè)人開發(fā)人員提供工具和支持。他們理解每個(gè)開發(fā)人員實(shí)際上都是為自己和他/她關(guān)心的項(xiàng)目工作。這是對(duì)我們愛的傳遞。 Storj希望構(gòu)建一個(gè)不受影響的對(duì)象存儲(chǔ)庫,以便開發(fā)人員可以專注于構(gòu)建他們喜歡的項(xiàng)目。
5. MaidSafe
狀態(tài):已上線
闡述:
SAFE網(wǎng)絡(luò)是一個(gè)用于數(shù)據(jù)存儲(chǔ)和通信的分布式自治網(wǎng)絡(luò)。為每個(gè)人提供安全訪問(SAFE)。存儲(chǔ)在網(wǎng)絡(luò)上的數(shù)據(jù)具有極高的可用性,耐用性,隱私性和安全性。網(wǎng)絡(luò)有效擴(kuò)展,網(wǎng)絡(luò)上存儲(chǔ)的數(shù)據(jù)的安全性隨著網(wǎng)絡(luò)的增長(zhǎng)而增加。
為何選擇SAFE網(wǎng)絡(luò)?
現(xiàn)有的基于服務(wù)器客戶端的互聯(lián)網(wǎng)為操作服務(wù)器的人,而不是創(chuàng)建數(shù)據(jù)的人提供數(shù)據(jù)所有權(quán)。運(yùn)營商可以限制,修改,刪除或出售該數(shù)據(jù),而無需創(chuàng)建該數(shù)據(jù)的用戶。在有利于創(chuàng)建者的條款上,分發(fā)用戶數(shù)據(jù)的聯(lián)合協(xié)議的接受度和可用性差,促使創(chuàng)建SAFE網(wǎng)絡(luò)。
默認(rèn)情況下,在SAFE網(wǎng)絡(luò)上存儲(chǔ)數(shù)據(jù)的客戶端具有強(qiáng)加密功能,可以通過靈活的權(quán)限層控制訪問。