此文為參與Polkadot征文大賽投稿
平兄是看到咕嚕前輩轉(zhuǎn)發(fā)的『Polkadot 征文活動(dòng)』知道征文這事的,Polkadot 這個(gè)明星級(jí)『跨鏈/并行鏈』的項(xiàng)目提完,幣圈人肯定略有所聞形纺,但可能更多人是平兄一樣,最開(kāi)始對(duì) Polkadot 的認(rèn)識(shí)只是停留在那幾個(gè)標(biāo)簽:『鏈間通訊 / 平行鏈 / 異構(gòu)』徒欣。
看到咕嚕的轉(zhuǎn)發(fā)后逐样,平兄便下定決心要參與這次征文,然后就是做了長(zhǎng)達(dá)一個(gè)多星期的知識(shí)儲(chǔ)備打肝,大致整理如下:
【共識(shí) | 激勵(lì)】一條區(qū)塊鏈脂新,看這兩個(gè)點(diǎn)!4炙蟆争便!
Cosmos 從入門到“放棄” (一個(gè)系列,內(nèi)含 4 篇)
積累了必要的知識(shí)背景后断医,現(xiàn)在終于輪到了 Polkadot 這個(gè)壓軸主角了滞乙。
本文,平兄將從以下 5 個(gè)角度來(lái)介紹 Polkadot:
1鉴嗤、Polkadot 背景
2斩启、Polkadot 網(wǎng)絡(luò)架構(gòu)
3、Polkadot 共識(shí)機(jī)制
4醉锅、Polkadot 治理機(jī)制
5兔簇、Polkadot vs Cosmos
Are you ready ?Go……
背景
Polkadot 創(chuàng)始人 Gavin Wood硬耍,作為該項(xiàng)目的靈魂人物垄琐,可謂眾所周知。
但可能有些人不知道默垄,其實(shí) Gavin Wood 也是以太坊的前創(chuàng)始人此虑、首屆 CTO。
在 Gavin Wood 任職期間口锭,他協(xié)助開(kāi)發(fā)了 Solidity 語(yǔ)言朦前,并且編寫(xiě)了以太坊的技術(shù)黃皮書(shū)介杆。
后來(lái) Gavin Wood 離職以太坊,并且在 2015 年末與一些以太坊開(kāi)發(fā)者注冊(cè)了 Parity Technologies 這家公司韭寸,專注于 Web 3.0 底層設(shè)施的技術(shù)研發(fā)春哨,以太坊客戶端 Parity 就是它的產(chǎn)品。
在運(yùn)營(yíng) Parity 期間恩伺,Gavin Wood 多次與團(tuán)隊(duì)交流關(guān)于未來(lái)以太坊的升級(jí)赴背,并且很期待以太坊 1.x / 2.0 的到來(lái),心想晶渠,只要白皮書(shū)一定下來(lái)凰荚,就可以開(kāi)始著手開(kāi)發(fā)。
由于以太坊進(jìn)展緩慢等問(wèn)題褒脯,Gavin Wood 踐行了『即然世界沒(méi)我想要的便瑟,那我就自己來(lái)造一個(gè)』的理念,Gavin Wood 和 Parity 團(tuán)隊(duì)就決定自己來(lái)打造下一代智能合約平臺(tái)番川。
2016年11月14日到涂,Gavin Wood 發(fā)布了 Polkadot 白皮書(shū) ,詳細(xì)介紹了一個(gè)多鏈異構(gòu)的可擴(kuò)展區(qū)塊鏈框架颁督。
幾個(gè)月后践啄,Gavin Wood 創(chuàng)辦了 Web 3 基金會(huì),Web 3 基金會(huì)是一個(gè)非營(yíng)利性組織沉御,主要任務(wù)是開(kāi)發(fā)去中心化網(wǎng)絡(luò)屿讽,并將 Polkadot 歸入麾下,管理負(fù)責(zé)著 Polkadot 在 2017 年 10 月的預(yù)售吠裆。
在 2017 年10 月 27 日聂儒,Web 3 基金會(huì)結(jié)束了 Polkadot 的預(yù)售,總共賣了 5 百萬(wàn)的 DOT 代幣硫痰,合計(jì) 485,331 ETH衩婚。
除了安排預(yù)售 ,Web 3 基金會(huì)還需要在兩年內(nèi)完成 Polkadot 網(wǎng)絡(luò)的開(kāi)發(fā)效斑,Web 3 基金會(huì)將將這個(gè)任務(wù)分配給了 Parity Technologies非春。
不過(guò),在2017年11月6日缓屠,Parity Technologies 的以太坊多簽錢包出現(xiàn)了一個(gè)大 Bug奇昙,將 500,000 ETH 鎖死了,其中有 300,000 個(gè)屬于 Web 3 基金會(huì)的敌完。值得稱贊地是储耐,這次 Bug 并沒(méi)有影響 Polkadot 的進(jìn)度規(guī)劃。
網(wǎng)絡(luò)架構(gòu):Parachain & RelayChain & Bridge
通過(guò)上圖滨溉,我們可以得知什湘,在 Polkadot 中长赞,有 3 大組件:
1、RelayChain:相當(dāng)于 Cosmos 上的 Hub闽撤,是 Polkadot 網(wǎng)絡(luò)中的中央樞紐得哆,它主要的任務(wù)是協(xié)調(diào)共識(shí)并且為 parachains 分配交易。
這里需要額外說(shuō)明一點(diǎn)就是哟旗,Polkadot 網(wǎng)絡(luò)上的驗(yàn)證者等角色都是位于 RelayChain 上的贩据,也就是說(shuō),運(yùn)行 parachains 不需要運(yùn)行自己的驗(yàn)證者闸餐,RelayChain 上的驗(yàn)證者們會(huì)負(fù)責(zé)對(duì) parachains 的交易進(jìn)行打包驗(yàn)證饱亮,即官方術(shù)語(yǔ):『Shared Security』,共享安全模型舍沙。而 Cosmos Zone 則不擁有這個(gè)特性近尚。
2、Parachain:相當(dāng)于 Cosmos 上的 Zone场勤,每一條 Parachain 的相關(guān)信息都記錄在 Parachain 注冊(cè)表中。
parachains 可以決定自己的應(yīng)用邏輯以及開(kāi)發(fā)語(yǔ)言歼跟,只需要實(shí)現(xiàn)與 relayChain 通訊的特定功能接口就行和媳。
通過(guò)鏈間通訊這個(gè)功能,parachain 可以與其他parachain進(jìn)行通訊哈街,即 relayChain 中的驗(yàn)證者將交易派發(fā)到另一 parachain 執(zhí)行留瞳。
鏈間通訊采用了排隊(duì)機(jī)制,每筆交易都必須在隊(duì)列中等待執(zhí)行骚秦,同時(shí)為了防止垃圾交易攻擊她倘,每個(gè) parachain 的輸入隊(duì)列都有一個(gè)上限。
3作箍、Bridges:相當(dāng)于 Cosmos 上的 Peg Zone硬梁,用于與現(xiàn)有區(qū)塊鏈(如以太坊)進(jìn)行連接通訊。
共識(shí)獎(jiǎng)懲機(jī)制
Polkadot 使用 Aurand 和 Tendermint PBFT 的混合機(jī)制胞得,平兄在往期文章 Tendermint 共識(shí)協(xié)議 詳細(xì)講解了 Tendermint PBFT荧止,小伙伴們可以了解一下。
Aurand 機(jī)制隨機(jī)選擇驗(yàn)證人出塊阶剑,但是不需要 2/3 驗(yàn)證者的共識(shí)跃巡,雖然 Aurand 出塊更快,但是如果驗(yàn)證人存在惡意行為牧愁,區(qū)塊也有可能被回滾素邪。
從圖片中我們可以看出,在 Polkadot 中猪半,每 5 個(gè)區(qū)塊就可以實(shí)現(xiàn)最終性兔朦,即先用 Aurand 機(jī)制出 4 個(gè)區(qū)塊偷线,這 4 個(gè)區(qū)塊可以快速處理而無(wú)需 2/3 的共識(shí),所以速度比 PBFT 更快烘绽,這時(shí)候即使出現(xiàn)惡意區(qū)塊了淋昭,也可以回滾,但是如果使用 Tendermint PBFT 出了一個(gè)區(qū)塊后安接,即前面的區(qū)塊都實(shí)現(xiàn)了最終性翔忽。以此循環(huán)往復(fù)。
接下來(lái)盏檐,我們結(jié)合 Polkadot 生態(tài)中的四個(gè)主要角色歇式,來(lái)詳細(xì)分解一下出塊過(guò)程。
驗(yàn)證者 Validators
首先胡野,要成為 Polkadot 的驗(yàn)證者材失,需要抵押 Polkadot 的原生代幣 DOT。抵押的 DOT 可以是驗(yàn)證者自己的硫豆,也可以是第三方委托抵押龙巨。
驗(yàn)證者的任務(wù)就是保護(hù) relayChain 的安全,熊响、驗(yàn)證由 Collators 提供的候選區(qū)塊,同時(shí)驗(yàn)證者并不會(huì)維護(hù)所有 parachains 上的完整同步數(shù)據(jù)庫(kù)汗茄,因?yàn)榇鎯?chǔ)的數(shù)據(jù)量過(guò)大秸弛,所以驗(yàn)證者將存儲(chǔ)和提議新 parachains 區(qū)塊的任務(wù)交給了第三方(Collators),另外驗(yàn)證者還要同步更新 parachains 鏈間通訊的交易隊(duì)列洪碳。
最后递览,Polkadot 網(wǎng)絡(luò)對(duì)驗(yàn)證者的節(jié)點(diǎn)性能要求較高,如果做不好瞳腌,會(huì)收到懲罰绞铃,做得好,當(dāng)然也有獎(jiǎng)勵(lì)嫂侍。具體這獎(jiǎng)懲治理這一塊憎兽,我們?cè)诰唧w小節(jié)詳談。
提名者 Nominators
其實(shí)我覺(jué)得中文應(yīng)該叫做委托者更好點(diǎn)吵冒,畢竟作用其實(shí)跟 Comos 中的委托者一樣的纯命,其實(shí)就是 DOT 持有者,Nominators 可以將自己的 DOTs 抵押給驗(yàn)證者痹栖,然后與驗(yàn)證者風(fēng)險(xiǎn)利益共擔(dān)亿汞。這也促使了 Nominators 將自己的 DOTs 委托給優(yōu)秀的驗(yàn)證者,形成一個(gè)良性循環(huán)。
收集者 Collators
Collators 中文很多人翻譯為校對(duì)者付翁,平兄根據(jù)其功能屬性翩腐,覺(jué)得 收集者 可能更貼切些量蕊。
收集者 Collators 負(fù)責(zé)維護(hù) parachains,收集用戶發(fā)起的交易信息并且打包成塊發(fā)送給驗(yàn)證者驗(yàn)證哨查。如上文所說(shuō)回俐,收集者必須運(yùn)行一個(gè) relayChain 全節(jié)點(diǎn)吹艇,維護(hù) parachains 的完整同步數(shù)據(jù)麦牺。
與 驗(yàn)證者不同的是钮蛛,收集者 Collators 不需要抵押 DOTs,并且可以通過(guò)交易手續(xù)費(fèi)來(lái)獲得收入剖膳,當(dāng)然魏颓,如果收集者 Collators 作惡,驗(yàn)證者是能夠發(fā)現(xiàn)的吱晒,只要驗(yàn)證者證明了 Collators 生成了一個(gè)無(wú)效區(qū)塊甸饱,驗(yàn)證者可以將違規(guī)收集者 Collators 的資金轉(zhuǎn)到自己的賬戶中。
漁夫 Fisherman
漁夫 Fisherman 就像 Polkadot 上的網(wǎng)警仑濒,或者說(shuō)成賞金獵人更恰當(dāng)叹话。他們監(jiān)控惡意行為,然后向驗(yàn)證者報(bào)告這些行為已獲得獎(jiǎng)勵(lì)墩瞳。
要成為 Fisherman驼壶,必須抵押 DOTs 并且運(yùn)行節(jié)點(diǎn)來(lái)監(jiān)控網(wǎng)絡(luò)。
治理模式
Polkadot 網(wǎng)絡(luò)更多地是一種鏈上治理的模式矗烛,即由 DOT 持有者通過(guò)公投系統(tǒng),投票決定 Polkadot 網(wǎng)絡(luò)的一些更新和修復(fù)箩溃,由多數(shù)票為決定結(jié)果瞭吃。
另外,為了預(yù)防持有者的不積極投票(如 EOSIO 的公投涣旨,積極性就很差歪架,不過(guò)現(xiàn)在已經(jīng)改為 21 BPs 自主決策了),Parity Technologies 團(tuán)隊(duì)也提出了一些應(yīng)對(duì)方案:
1霹陡、投票法定數(shù):即要一個(gè)提案被視為有效和蚪,必須滿足一個(gè)最小投票數(shù)。
2烹棉、絕大多數(shù)贊同票:即要一個(gè)提案被視為有效攒霹,必須要滿足一個(gè)投票比例,不過(guò)目前這個(gè)比例尚未確定浆洗。
另外催束,Parity Technologies 還引入了一個(gè)“理事會(huì)”,由 24 個(gè) 賬戶組成伏社,針對(duì)那么沒(méi)有得到重視的提案進(jìn)行投票抠刺,這些理事會(huì)的成員的任期為 12 月塔淤,也是需要投票進(jìn)行選擇。
理事會(huì)有兩大任務(wù):
1速妖、提議公投提案高蜂;
2、取消危險(xiǎn)或者惡意的公投提案罕容;
只要你抵押夠一些數(shù)量 DOTs 备恤,就可以提議一個(gè)公投提案,然后這個(gè)提案會(huì)進(jìn)入投票隊(duì)列杀赢,如果有人認(rèn)可這個(gè)提案烘跺,也可以為這個(gè)提案抵押一些 DOTs,在一段時(shí)間后脂崔,最終得到抵押 DOTs 最多的提案可進(jìn)入正式投票:
有三種可能的投票結(jié)果:
1滤淳、多數(shù)通過(guò),如果贊成的票數(shù)多于反對(duì)的票數(shù)砌左,該提案就通過(guò)了脖咐。
2、積極的投票率偏向汇歹,即在投票率較低的情況下屁擅,必須獲得絕對(duì)多數(shù)的贊成票。
3产弹、負(fù)面的投票率偏向派歌,即在投票率較低的情況下,需要獲得絕對(duì)多數(shù)的反對(duì)票才能否決痰哨。
Polkadot vs Cosmos
現(xiàn)在胶果,我們實(shí)用表格簡(jiǎn)單對(duì)比一下這兩個(gè)跨鏈項(xiàng)目:
Cosmos | Polkadot | |
---|---|---|
網(wǎng)絡(luò)原生代幣 | Atom | DOT |
網(wǎng)絡(luò)架構(gòu) | Hub,Zone斤斧,Peg Zone | relayChain早抠,parachain,bridge |
共識(shí)機(jī)制 | Tendermint | Tendermint+Aurand (可能會(huì)變更) |
共享安全驗(yàn)證池 | 否撬讽,Zone 自行運(yùn)作驗(yàn)證者 | 是蕊连,relayChain負(fù)責(zé)全部驗(yàn)證工作 |
治理模式 | 鏈上投票治理 | 鏈上投票治理(多了理事會(huì)) |
主網(wǎng)啟動(dòng) | 2019年3月14日 | 2019年Q3 |
根據(jù)我目前對(duì)這兩個(gè)項(xiàng)目的了解,我個(gè)人是偏向于 Polkadot 的游昼,這不是因?yàn)閰⑴c征文就說(shuō)偏向于它甘苍,我的理由如下:
對(duì)于開(kāi)發(fā)者來(lái)說(shuō),在 polkadot 上運(yùn)行 parachain 它們可以專注于實(shí)現(xiàn)業(yè)務(wù)邏輯就行烘豌,不需要去關(guān)心底層以及建立自己的驗(yàn)證者群羊赵,這樣比較省心。
當(dāng)然也有人說(shuō),Cosmos 中 Zone 有自己的驗(yàn)證者群昧捷,這樣會(huì)更加去中心化闲昭,但是我覺(jué)得不一定,甚至?xí)?dǎo)致單個(gè) Zone 的中心化靡挥,畢竟不是每個(gè)團(tuán)隊(duì)都能夠去搭建那么多驗(yàn)證節(jié)點(diǎn)序矩。
其他對(duì)比點(diǎn)我真的就覺(jué)得這兩個(gè)項(xiàng)目目前難分伯仲,有人說(shuō) Cosmos 有先發(fā)優(yōu)勢(shì)跋破,可是先發(fā)優(yōu)勢(shì)或許也會(huì)變成前車之鑒呀簸淀!
既然難分伯仲,那么就讓時(shí)間去驗(yàn)證吧毒返!
結(jié)語(yǔ)
由于 polkadot 項(xiàng)目目前都在不斷地迭代中租幕,所以某些技術(shù)選定說(shuō)不定在未來(lái)也會(huì)被替換,平兄未來(lái)也會(huì)跟進(jìn) polkadot 的動(dòng)態(tài)拧簸,有大家一起分享學(xué)習(xí)劲绪!
有了對(duì) polkadot 較為全面的理解后,或許接下來(lái)盆赤,平兄也可以嘗試寫(xiě)點(diǎn)更有深度的東西了贾富,希望自己與大家都能夠有所成長(zhǎng)。
最后牺六,希望文章對(duì)大家有價(jià)值颤枪,也希望大家能多多支持轉(zhuǎn)發(fā)!