為什么寫(xiě)這篇文章,其實(shí)因?yàn)楹枚嗳瞬⒉磺宄降譱pfs和filecoin之間的關(guān)系是什么?為什么會(huì)有ipfs和filecoin?本文來(lái)解答這個(gè)問(wèn)題。
現(xiàn)在他們成為了共生關(guān)系,離開(kāi)一方另外一方發(fā)展就會(huì)變的困難。ipfs是一個(gè)協(xié)議也是一個(gè)p2p網(wǎng)絡(luò),它類(lèi)似現(xiàn)在的bt網(wǎng)絡(luò),只是擁有更強(qiáng)大的功能,使得ipfs可以擁有了取代http的能力,為我們建造更好的web。filecoin是一個(gè)分布式存儲(chǔ)網(wǎng)絡(luò),把云存儲(chǔ)變?yōu)橐粋€(gè)算法市場(chǎng),代幣和區(qū)塊鏈在這里面起到很重要的作用?,F(xiàn)在已經(jīng)在運(yùn)行的Storj、sia,玩客云等等都是這種類(lèi)型的網(wǎng)絡(luò),如果沒(méi)有ipfs,filecoin就是跟這些項(xiàng)目沒(méi)有太大區(qū)別。
把ipfs和filecoin放在一起,事情變得奇妙起來(lái):filecoin是運(yùn)行在ipfs上面的一個(gè)激勵(lì)層。ipfs有巨大存儲(chǔ)需求和節(jié)點(diǎn)需求,我們都知道p2p網(wǎng)絡(luò)節(jié)點(diǎn)越多下載越快,如果沒(méi)有激勵(lì)機(jī)制,誰(shuí)愿意貢獻(xiàn)如此多的節(jié)點(diǎn)和存儲(chǔ)呢,于是filecoin來(lái)了。filecoin可以為ipfs貢獻(xiàn)很多很多節(jié)點(diǎn),同時(shí)filecoin帶著一個(gè)巨大的分布式存儲(chǔ)空間,同時(shí)解決了ipfs的存儲(chǔ)問(wèn)題。于是ipfs跟http對(duì)比擁有了更強(qiáng)的優(yōu)勢(shì)。filecoin代幣的作用:filecoin協(xié)議的代幣也叫filecoin ,說(shuō)filecoin的時(shí)候可能說(shuō)的filecoin網(wǎng)絡(luò), 也可能說(shuō)的是 filecoin代幣 ) ,符號(hào)FIL,代幣是溝通資源使用者(用戶)和資源提供者(礦工)的中介橋梁,filecoin協(xié)議擁有兩個(gè)交易市場(chǎng),數(shù)據(jù)檢索和數(shù)據(jù)存儲(chǔ),雙方在市場(chǎng)里面提交自己的需求,達(dá)成交易。filecoin和ipfs相互促進(jìn),共創(chuàng)未來(lái),真是一對(duì)好情侶!
IPFS協(xié)議
ipfs協(xié)議對(duì)標(biāo)的是http協(xié)議,http是一個(gè)傳輸協(xié)議, 解決的是網(wǎng)絡(luò)傳輸問(wèn)題。http協(xié)議我們很熟悉了,用了這么多年了,http協(xié)議是一個(gè)偉大發(fā)明,沒(méi)有http協(xié)議就沒(méi)有互聯(lián)網(wǎng),隨著互聯(lián)網(wǎng)的發(fā)展http協(xié)議逐漸暴露出來(lái)了很多問(wèn)題,技術(shù)永遠(yuǎn)是在進(jìn)步的
HTTP的不足之處:
效率低,使用成本高,帶寬資源浪費(fèi)嚴(yán)重
數(shù)據(jù)丟失,頁(yè)面平均生命周期只有100天
中心化的網(wǎng)絡(luò)限制了很多發(fā)展機(jī)會(huì)
對(duì)主干網(wǎng)的嚴(yán)重依賴, 經(jīng)常造成服務(wù)中斷
IPFS也是一個(gè)數(shù)據(jù)數(shù)據(jù)傳輸協(xié)議, 相比于http有如下優(yōu)點(diǎn):
P2P下載, 節(jié)省高達(dá)60%的帶寬, 使用成本低廉
永久web, 不在刪除數(shù)據(jù)
分布式的網(wǎng)絡(luò), 給互聯(lián)網(wǎng)帶來(lái)生機(jī)
不再依賴主干網(wǎng), 降低因不可抗力造成的服務(wù)中斷問(wèn)題
ipfs是一個(gè)協(xié)議也是一個(gè)網(wǎng)絡(luò)。實(shí)實(shí)在在的網(wǎng)絡(luò),已經(jīng)運(yùn)行了2年半了。就像btc網(wǎng)絡(luò)一樣,ipfs協(xié)議也沒(méi)有發(fā)明什么,大多數(shù)工作是在前人已有的基礎(chǔ)進(jìn)行的,ipfs集成了如下已有的系統(tǒng):
DHT(distributed hash tables):分布式哈希表
Git:版本管理工具
BitTorrent:數(shù)據(jù)交換協(xié)議
SFS(self-certified filesystems):自認(rèn)證文件系統(tǒng)
ipfs協(xié)議是如何設(shè)計(jì)的,都包含什么
1 節(jié)點(diǎn)身份
每一個(gè)ipfs節(jié)點(diǎn)都有一個(gè)獨(dú)一無(wú)二的身份id,利用節(jié)點(diǎn)的公鑰生成的加密哈希,節(jié)點(diǎn)的活動(dòng)都需要使用這個(gè)id,就像是ipfs網(wǎng)絡(luò)里面節(jié)點(diǎn)的身份證。
2 網(wǎng)絡(luò)
ipfs節(jié)點(diǎn)要和網(wǎng)絡(luò)里面成百上千的其它節(jié)點(diǎn)通訊,現(xiàn)實(shí)中的網(wǎng)絡(luò)結(jié)構(gòu)如此復(fù)雜,ipfs使用 ICE NAT穿透技術(shù)來(lái)保障網(wǎng)絡(luò)的連通性。
3 路由
ipfs網(wǎng)絡(luò)的路由使用的是DHT,借鑒了S/Kademlia,使得一個(gè)節(jié)點(diǎn)可以快速的查找到其它節(jié)點(diǎn)。
4 數(shù)據(jù)交換協(xié)議
ipfs借鑒BitTorrent協(xié)議,使用了叫做BitSwap的數(shù)據(jù)交換協(xié)議,該協(xié)議使用兩個(gè)列表,想要的數(shù)據(jù)塊(want_list)和我有的數(shù)據(jù)塊(have_list)與其它節(jié)點(diǎn)進(jìn)行數(shù)據(jù)交換。
5 對(duì)象存儲(chǔ)
ipfs存儲(chǔ)數(shù)據(jù)使用的是 Merkle DAG結(jié)構(gòu),這賦予了ipfs內(nèi)容尋址,防篡改,去重功能。
6 版本控制系統(tǒng)
ipfs在 Merkle DAG上面添加了Git版本控制功能,這使得ipfs文件擁有了時(shí)光機(jī)功能,可以輕松查看文件的變動(dòng)歷史,是不是很酷
7 自認(rèn)證命名系統(tǒng)
ipfs使用了SFS自認(rèn)證系統(tǒng)給文件命名,同時(shí)提供了ipns解決傳播問(wèn)題,而且還兼容了現(xiàn)有的域名系統(tǒng)。
這就是我們的ipfs,一顆冉冉升起的新星。
Filecoin協(xié)議
filecoin是一個(gè)分布式存儲(chǔ)網(wǎng)絡(luò),她把云存儲(chǔ)轉(zhuǎn)換為算法市場(chǎng)。filecoin是運(yùn)行在ipfs上面的一個(gè)激勵(lì)層。filecoin可以存儲(chǔ)幾乎一切數(shù)據(jù),運(yùn)行分布式應(yīng)用,實(shí)現(xiàn)智能合約系統(tǒng)。
Filecoin包含什么?
1 blockchain,區(qū)塊鏈
跟其它區(qū)塊鏈項(xiàng)目一樣,這是filecoin的基礎(chǔ),一切都是圍繞block和chain進(jìn)行的。
2 交易市場(chǎng)
filecoin擁有兩個(gè)交易市場(chǎng),檢索市場(chǎng)和存儲(chǔ)市場(chǎng),礦工和用戶在這兩市場(chǎng)里面達(dá)成交易,實(shí)現(xiàn)價(jià)值交換。
3 共識(shí)機(jī)制
有交易和區(qū)塊鏈必然要有誰(shuí)記賬的問(wèn)題,filecoin也一樣,必然要解決的一個(gè)問(wèn)題是,共識(shí)機(jī)制。在這里要表?yè)P(yáng)一下filecoin,filecoin拋棄了以往區(qū)塊鏈的高度依賴計(jì)算資源和能源消耗形成的共識(shí)機(jī)制,filecoin重新利用有意義的工作來(lái)形成共識(shí)機(jī)制,這就是PFT(power fault tolerance),進(jìn)化版的拜占庭容錯(cuò)機(jī)制,將礦工當(dāng)前在網(wǎng)中使用的存儲(chǔ)量和生成的時(shí)空證明轉(zhuǎn)化為投票的權(quán)重,然后節(jié)點(diǎn)利用這個(gè)權(quán)重進(jìn)行選舉產(chǎn)生一個(gè)或者多個(gè)領(lǐng)導(dǎo)節(jié)點(diǎn),領(lǐng)導(dǎo)節(jié)點(diǎn)創(chuàng)建新的block并把它們傳播到網(wǎng)絡(luò)。filecoin的block數(shù)據(jù)結(jié)構(gòu)采用了DAG結(jié)構(gòu)。
4 智能合約
filecoin采用了兩個(gè)基本的api供用戶使用,數(shù)據(jù)存儲(chǔ)put,數(shù)據(jù)獲取get,在這兩種操作的基礎(chǔ)上filecoin支持文件合約(File Contracts),讓用戶可以有更精細(xì)化的控制。filecoin集成了合約系統(tǒng)和橋系統(tǒng),把filecoin的存儲(chǔ)系統(tǒng)提供給其他區(qū)塊鏈系統(tǒng)使用,同時(shí)可以讓filecoin使用其它區(qū)塊鏈的功能。
filecoin開(kāi)發(fā)了橋(Bridge)工具,它可以鏈接不同的區(qū)塊鏈,這就是為什么那么多的白皮書(shū)提到要和ipfs和區(qū)塊鏈鏈接起來(lái),因?yàn)閒ilecoin天生就擁有這樣的能力。
歡迎加微信交流探討!dinglei56wy
