? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?淺談Filecoin(一)
最近大家還是比較關(guān)心Filecoin,因?yàn)楣俜接行╆P(guān)于Filecoin的問題還未得到更好的解決方案,導(dǎo)致主網(wǎng)上線的時(shí)間遲遲沒有消息,那協(xié)議實(shí)驗(yàn)室也給出了研究資助計(jì)劃來尋求更好的解決方案等。那最近小編就寫一點(diǎn)關(guān)于Filecoin和挖礦的一些內(nèi)容,干貨比較多,文章會分很多期,第一期我們先從Filecoin共識說起。
一、共識機(jī)制
因?yàn)榈谝粋€(gè)比特幣稱為“創(chuàng)始區(qū)塊”,因?yàn)榻榻B主流機(jī)制的太多了,那我們就先簡單介紹一下,更多的說說Filecoin的共識,比特幣網(wǎng)絡(luò)是完全公開化的,任何人都可以匿名接入,因此共識機(jī)制的穩(wěn)定性和防攻擊性十分重要,常見的共識機(jī)制如:
1、POW(Proof-of-Work)即工作量證明,整個(gè)系統(tǒng)中每個(gè)節(jié)點(diǎn)為整個(gè)系統(tǒng)提供計(jì)算能力,通過一個(gè)競爭機(jī)制,讓計(jì)算工作完成最出色的節(jié)點(diǎn)獲得系統(tǒng)的獎(jiǎng)勵(lì),完成新的分配。
2、POS(Proof-of-Stake)即權(quán)益證明,類似現(xiàn)在的股東機(jī)制,擁有token數(shù)量越多的人越容易獲得記賬權(quán),惡意參與者將存在保證金被罰沒的風(fēng)險(xiǎn)。
3、DPOS(Delegated-Proof-of-Stake)即授權(quán)股權(quán)證明,基于POS衍生的更專業(yè)的解決方案,類似于董事會投票機(jī)制,社區(qū)成員投票支持超級代表以確保其網(wǎng)絡(luò),超級代表將通過驗(yàn)證下一個(gè)區(qū)塊的交易來獲得獎(jiǎng)勵(lì)。DPoS與PoS的主要區(qū)別在于DPoS共識系統(tǒng),社區(qū)成員在網(wǎng)絡(luò)中擁有更多的治理權(quán)。
二、Filecoin Consensus
因?yàn)榇罅康牡V工通過計(jì)算來獲得獎(jiǎng)勵(lì),協(xié)議實(shí)驗(yàn)室認(rèn)為大量的計(jì)算都是有價(jià)值的,不僅僅是為了保護(hù)區(qū)塊鏈的安全,所以如何有效的利用被浪費(fèi)的計(jì)算是Filecoin的主要?jiǎng)訖C(jī)。
一些信的機(jī)制正在改變POW的浪費(fèi)問題,以太坊需要礦工與Proof-of-Work一起執(zhí)行小型項(xiàng)目,而Permacoin則提供檔案通過要求礦工轉(zhuǎn)換哈希函數(shù),同時(shí)證明某些數(shù)據(jù)正在歸檔。盡管這些嘗試中的大多數(shù)都能夠發(fā)揮有用的作用,但浪費(fèi)的工作量仍然很普遍這些計(jì)算中的因素。
所以協(xié)議實(shí)驗(yàn)室認(rèn)為大部分的網(wǎng)絡(luò)資源,應(yīng)該用在更有用的工作中去,所以著手設(shè)計(jì)一個(gè)基于存儲用戶數(shù)據(jù)的有用工作共識協(xié)議。
Power in Filecoin(Filecoin功率),類似于比特幣中的算力,在Filecoin中,你的存儲能力和你的“算力”成正比。Filecoin中功率具有:‘Public‘、’Publicly Verifiable‘、’Vaeiale‘
意思是你的存儲總量是公開的,每個(gè)人都可以對你的存儲任務(wù)進(jìn)行驗(yàn)證,增加你的“算力”的方法是增加你的存儲量,就是加硬盤。
接下來我用白皮書里面的一張圖示,先大體介紹一下Filecoin協(xié)議:


因?yàn)橛行┓g不是很準(zhǔn)確,所以放上原圖供大家參考。
我來說下大概的協(xié)議:
一、網(wǎng)絡(luò)(Network)
在分類賬本中的每個(gè)時(shí)期。
(1).對于每個(gè)新的區(qū)塊:檢查其是否處于有效格式、交易、訂單等是否有效,如果任何一個(gè)無效,則被判定為無限訂單,只有訂單有效才能進(jìn)入下一步。
(2).對于每個(gè)時(shí)期引入的每個(gè)新訂單:將訂單添加到存儲訂單中,然后進(jìn)行分類,分別為交易、出價(jià)和詢問。
(3).對交易市場的每個(gè)訂單需要進(jìn)行檢查是否過期(或取消):
?從訂單中刪除
?返還未使用的O.fund
?從AllocTable中釋放O.space
如果確認(rèn)交易,通過運(yùn)Manage.RepairOrders:
?如果失蹤,則懲罰礦工M承諾的抵押
?如果缺少多于Δfault的證據(jù)時(shí)代,取消訂單并重新到市場進(jìn)行廣播
?如果無法檢索和重建作品
從網(wǎng)絡(luò)上取消訂單
并重新退還給客戶
二、客戶
(at any time)隨時(shí):
1.通過Put.AddOrders提交新的存儲訂單
(a)通過Put.MatchOrders找到匹配的訂單
(b)將文件發(fā)送給匹配的礦工M
2.通過Get.AddOrders提交新的檢索命令
(a)通過Get.MatchOrders找到匹配的訂單
(b)礦工創(chuàng)建一個(gè)付款渠道
從存儲礦工M接收Odeal
(1).簽署Odeal
(2).通過簽署的Odeal提交給區(qū)塊鏈
Put.AddOrders
在收到(pi)來自檢索礦工M:
(1).驗(yàn)證(pi)是有效的,它被要求
(2).發(fā)送微支付給礦工
三、Storage mine(存儲挖礦)
隨時(shí):
(1).通過Manage.PledgeSector續(xù)訂過期質(zhì)押
(2).通過Manage.PledgeSector保證新的存儲空間
(3).通過Put.AddOrder提交新的詢價(jià)單
在每個(gè)時(shí)期t:
(1).對于訂單中的每個(gè)Oask:
(a)通過Put.MatchOrders找到匹配的訂單
(b)通過聯(lián)系匹配來開始新的交易客戶
(2).對于每個(gè)承諾部門:
(a)通過生成存儲證明
Manage.ProveSector
(b)如果發(fā)布證明的時(shí)間(每隔Δproof
時(shí)代),將其提交給區(qū)塊鏈
從客戶端接收文件:
1.檢查一塊是否具有在中指定的尺寸訂單出價(jià)Obid
2.創(chuàng)建Odeal并簽名并發(fā)送給客戶端
3.將該部分存儲在一個(gè)扇區(qū)中
4.如果扇區(qū)已滿,請運(yùn)行Manage.SealSector
四、Retrieval Mine(檢索挖礦)
(at any time)隨時(shí):
1.廣播向網(wǎng)絡(luò)發(fā)出命令
2.聽取來自網(wǎng)絡(luò)的出價(jià)訂單
來自客戶端的檢索請求:
1.用客戶端啟動(dòng)付款渠道
2.將數(shù)據(jù)分成多個(gè)部分
3.只是發(fā)送收到token的那部分文件
我不知道大家是否看的明白,有不明白的地方請告訴小編給予解答,并希望在后面的淺談Filecoin中能夠讓大家更好的明白。
這期就先到這里,后面將會更深入的講解挖礦和Filecoin提出的全新的證明機(jī)制,希望大家能多多分享,你的分享會是小編的動(dòng)力,謝謝。
溫馨提示
如果你喜歡本文,請分享到朋友圈,想要獲得更多信息,請關(guān)注我。
文獻(xiàn)參考:Filecoin白皮書(回復(fù)白皮書獲?。?/p>
Filecoin斯坦福大學(xué)PPT
代碼參考:IPFS GitHub?