dialog arrow

深度解析 — Polkadot

James 2020-07-13

  • Blockchain
  • Blockchain Technology
  • Cryptocurrency
  • Polkadot
  • Ethereum

深度解析 — Polkadot

歷時三年明星跨鏈項目 — Polkadot,在這風風雨雨的2020悄然上線了,在Defi重新引爆區塊鏈市場的熱潮下,跨鏈無疑被認定為下一個業界風口,而Polkadot的「跨鏈」究竟是什麼呢?就讓我們一起來了解它的始末,也可以知道自己到底在炒什麼幣(X)


Image for post


明星創始人 — Gavin Wood

說到Polkadot就不能不提到明星創辦人Gavin Wood。



Image for post

Gavin Wood在創立Polkadot之前,是以太坊聯合創辦人與Web3基金會的創辦人,也是以太坊技術長(CTO)。Gavin Wood最廣為人知的就是他是以太坊黃皮書(Ethereum yellow paper)的撰寫人,黃皮書可視為是以太坊的技術聖經。黃皮書當中提出了智能合約專用程式語言 — Solidity、以太坊虛擬機(EVM)的概念,Gavin Wood之後作為技術長也包辦了以太坊源碼、結構、技術整合等工程,奠定了以太坊穩固的技術基礎,以太坊能在這麼短的時間能進行商業崛起,成為第二大公鏈,都是建立在其穩定的技術基礎上,Gavin Wood可說是功不可沒。Gavin Wood隨後創辦了區塊鏈技術開發公司 — Ethercore,後改為Parity Technologies,Polkadot這一項目也由Parity Technologies所管理。

番外篇 — Parity wallet慘案

Parity wallet是由Gavin Wood所打造的以太坊客戶端錢包,是當時主打快速與使用體驗極佳的錢包之一,但先後在2019年的7/20與11/6發生兩起技術漏洞,造成大量金額損失。

7/20:駭客透過該Parity Wallet中的多重簽名(multi-signature)功能漏洞,使駭客將錢包的所有權轉移到自己手上(正確來說,是控制後頭智能合約的所有權),從而竊取了15.3萬顆的以太坊,折合當時市價約3000萬美元。(這還是白帽駭客搶救過後的損失…)

11/6:GitHub 用戶 devops199 發表了代號#6995的提案 — 「任何人都可以刪除合約」,然後聲稱自己將Parity wallet的合約刪除了。

devops199透過調用合約的公開函數,將合約的所有權移轉給自己(又來了)

結果他就把合約刪掉了…

結果他就把合約刪掉了…

結果他就把合約刪掉了…

當時Polkadot已經成功結束一輪融資,devops199這麼一搞,除了93萬顆ETH就這麼被凍結了(當時市價約2.8億美元),也凍結住Polkadot融資獲得的30萬顆ETH(約為9000萬美元)。


Polkadot跨鏈結構

背景介紹完了,我們該來看看Polkadot的跨鏈葫蘆中賣的是藥了。

先來參閱一下Polkadot白皮書中所提到的跨鏈架構:


Image for post

來源:Polkadot白皮書

好的,可以跳過不看整張圖。

這張圖中我們只需要先找出中間白色的Relay chain、旁邊白色圓點連接的Parachain,以及下方連結Ethereum的Parachain bridge就好。中繼鏈(Relay chain)、平行鏈(Parachain)、橋(Bridge),為Polkdadot跨鏈的核心架構。


中繼鏈(Relay chain)

為Polkadot網路的底層,也是我們一般稱為的「主鏈」,負責共識演算法與交易,驗證平行鏈中的資訊,以確保全局一致性。

平行鏈(Parachain)

平行鏈可視為中繼鏈的「子鏈」,這些鏈有自己的狀態機、自己的規則、自己的代幣、以及自己的區塊驗證機制。從上圖的環狀結構中,旁邊的白色圓點都是連接中繼鏈的「插槽」,而在Polkadot的中繼鏈上,任何人皆可建立屬於自己的Token與自己的應用場景,將產生的數據與程式運算後紀錄於中繼鏈上。

轉接橋(Bridge)

轉接橋為Polkadot跨鏈的核心架構,可視為是特殊的平行鏈。Polkadot可透過轉接橋,將例如比特幣、以太坊的資料連接到平行鏈上,目前Polkadot有三種跨鏈機制:

1.橋接合約(Bridge Contracts)

透過在平行鏈與其他主鏈(例如:比特幣、以太坊)上部署智能合約,以此達到跨鏈溝通的效果。

2.跨平行鏈通訊(Cross-Parachain Communication)

平行鏈之間可透過Polkadot的ICMP(Inter-Chain Message Passing)機制進行通訊,主要過程為

A將自己需要跨鏈的交易/訊息放到自己的輸出等待列中
A的資料收集人將資料提供給A的驗證人
驗證人驗證成功後將A的區塊鏈訊息與等待列資料提交到中繼鏈上
中繼鏈透過共識演算法進行確認後,中繼鏈上的驗證人將A的交易從A的等待列中輸入至B的等待列中
B根據等待列的資訊修改自身的區塊鏈帳本

3.內置橋接模塊(In-built Bridging Modules)

將內置模塊直接串接到特定的鏈上,例如比特幣或以太坊,可以將其他主鏈的資料直接,概念上可將其他主鏈視為Polkadot的平行鏈,這一做法可快速地與其他主鏈進行對接,實現代幣經濟的擴展,但也同時否定掉橋接合約的必要性。


說了這麼多專有名詞,用最簡單的方式來解釋:

Polkadot就像一個延長線(中繼鏈)。延長線上有很多插槽可以連接各式家電(平行鏈)。平行鏈可以透過連接橋串接不同的主鏈。


Image for post


共識演算法

Polkadot需要所有的節點達成共識後才能繼續延續區塊鏈,通過共識機制也能使所有節點狀態彼此同步,目的在於能提供所有Polkadot網路的參與者客觀事實,而這些網路參與者(平行鏈)也有自己的規則,最終互相同步以延續新的區塊。Polkadot的共識機制採取混合共識,分為GRANPA與BABE兩種,其中GRANDPA用於區塊的確認,BABE用於區塊的產生。

BABE (Blind Assignment for Blockchain Extension):

BABE的核心在於「隨機挑選不同的驗證人,在每一個插槽中生成一個區塊」。BABE會根據參與插槽並抵押代幣成為驗證人之中進行抽獎,根據抽獎結果決定誰是生成區塊的候選人,一個插槽有6秒的時間。而這個「插槽」可能會有多個驗證人,也可能沒有驗證人。若同一個時間段選中多個驗證人,採取先到先得,誰先將區塊傳送到最多的節點中即為獲勝。若沒有驗證人,Polkadot會透過後台選定一個驗證人以避免驗證人消失的狀況發生,讓他生成次級區塊(Secondary block),以確保區塊產生的完整性。

GRANDPA (GHOST-based Recursive ANcestor Deriving Prefix Agreement):

類似拜占庭協議,只要有2/3的節點是誠實的,並且可以在不同步狀態中運算1/5的節點,就能維持此網路在「部分同步」的模型中。區別在於GRANDPA是在鏈上達成共識,而不是區塊上達成共識,加快了確認區塊的過程,所以,即使這個區塊鏈網路長期分區或是其他節點故障,GRANDPA協議仍然會針對某條鏈達成共識,而非針對區塊形成共識。


簡言之,透過上述兩種共識混合,BABE共識會在GRANDPA共識確定好的鏈上生成區塊,而BABE共識會在具有最多主要區塊的鏈上創建區塊,如下圖。


Image for post

來源:Polkadot wiki

Polkadot共識機制中的參與人

在共識機制的執行下,共有四種角色:


收集者(Collators)

收集者類似礦工的角色,幫助驗證者收集平行鏈區塊鏈上的資訊與交易,將一個未打包的區塊交給驗證者進行驗證。收集者不需抵押代幣,在收集資料中以交易手續費作為收集獎勵,但不會收到區塊獎勵,此外,收集者必須維運一個平行鏈的全節點。

提名者(Nominator)

為共識機制中的代理制度。提名者可抵押DOT提供給可信任的驗證人參與共識機制,所以持有DOT代幣的人皆可以成為提名者。提名者可能是持有少量DOT的投資人,也可能是缺乏維護節點的相關技能,因此無法成為直接的驗證人。

驗證者(Validator)

驗證人負責Polkadot網路的出塊,也是整個Polkadot網路中權限最大的角色。驗證者需要抵押DOT並運行一個中繼鏈的節點,對提名出的平行鏈區塊進行驗證,當這些平行鏈的區塊被驗證者確認後,驗證者就會將區塊組裝到中繼鏈上進行共識演算。如果驗證人履行職責,則可獲得區塊獎勵+交易手續費,但若未履行職責(如:穩定出塊),則根據情節沒收部分或全部的DOT,將DOT銷毀一部分,其餘的分配給優良的驗證者。

驗證人的懲罰級別分為4個等級,等級後方的括號為其最高懲罰額度:

Lv 1(扣除0.1%代幣or踢出節點池):該驗證而未驗證,或是低安全威脅級別
Lv 2(扣除1%代幣):無惡意但卻因為不良操作而導致不良結果
Lv 3(扣除10%代幣):惡意導致之不良行為,但不會造成高安全威脅或占用大量主網資源
Lv 4(扣除100%代幣):對系統造成嚴重安全威脅、驗證者節點之間互相串通、不良行為導致系統花費大量資源

驗證者是以組的形式存在,驗證者由中繼鏈進行統一管理,可視為一個「驗證者池」,與平行鏈區隔開來,通過共識演算隨機分組配發給平行鏈進行驗證。

釣魚人(Fisherman)

釣魚人負責審查與監控Polkadot網路中的惡意行為,一旦發現惡意行為就會於Polkadot網路中進行舉報。釣魚人在舉報交易前也需要抵押DOT並且運行節點,此舉報過程也需要經過共識機制篩選,如果通過2/3以上的驗證就會被打包進區塊中,如果這舉報有效,釣魚人就會獲得獎勵,而這獎勵隨著惡意行為的嚴重性可能會非常豐厚,但若是釣魚人進行虛假的舉報,抵押的DOT也會被沒收作為懲罰。


Image for post

來源:Polkadot light paper

由這四種角色所組成的機制也被稱為提名權益證明 — NPoS(Nominated Proof of Stake)簡單的用屬性來區分以上四位角色,

交易手續費獎勵:驗證者、收集者

區塊驗證獎勵:驗證者、提名者(由驗證者分潤)

舉報獎勵:釣魚人

需質押DOT:驗證者、釣魚人、提名者


DOT代幣經濟

Polkadot代幣簡寫為DOT,為Polkadot網路中的原生代幣。

初始發行量為1000萬DOT,隨後接著通貨膨脹增加代幣總量,而這通貨膨脹的係數,經由官方目前提出的模型來算,約為主網DOT抵押率達50%時,通膨率為10%,初始發行量中,第一輪募資賣出50%的DOT(1.44億美元),第二輪賣出5%DOT(6600萬美元),30%預留給Web3基金會,15%待後續分發。DOT除了買賣以外,在Polkadot網路中有甚麼用途呢?主要有以下幾種:

治理(Goverance):

DOT 的持有者,透過治理機制可以管理Polkadot網路中的重要事件,例如:協議的升級和修復。

營運(Operation):

為維持Polkadot主網的運作,將DOT的質押與獎勵分發給收集者、驗證者、提名者、釣魚人四種角色,這四種角色的權責可參閱上方的共識機制。

操作(Inter-operability):

於Polkadot區塊鏈上進行交易的發送與傳遞訊息,可能會使用DOT作為手續費,其概念等同於以太坊的Gas,但這手續費不是必需的。

綁定(Bonding):

新的平行鏈需要通過綁定DOT 來加入網路中,也就是我們之前所提到的「插槽」。無人維護或是沒人使用的平行鏈也可以通過解除綁定 DOT 以從網路中刪除。

平行鏈的插槽拍賣‌

按照目前官方的說法,在 Polkadot 運行的第1年或2年之間,隨着各類實現的優化,平行鏈插槽將從5 個增加至 50 到 200 個,未來會隨著主網的狀態進行增減,以確保確保 Polkadot 中繼鏈的安全性。控制初期的平行鏈數量,也可以有效的維持插槽與DOT的供需平衡,促使驗證獎勵夠吸引人以成為驗證者。Polkadot 網路通過拍賣機制來競拍平行鏈的使用權,此拍賣機制為調整過後的蠟燭式拍賣,可以當作是英式拍賣的變種。

蠟燭式拍賣:隨機決定拍賣結束的時間,目的是確保沒人能確切知道拍賣會何時結束並進行最後一秒的競標。出價最高的人需要在主網中鎖定一定數量的 DOT,才可以在一定時間段內擁有所拍得平行鏈的使用權。‌這代表想要使用 Polkadot 上的平行鏈,需要購買並鎖定大量 DOT ,直到不想再使用這條平行鏈為止。‌


總結

回首2020之前風風雨雨的公鏈項目,Polkadot所提出的概念依舊具有前瞻性。在未來的區塊鏈生態中,跨鏈的資產與資訊互通是必然的趨勢,單以最近火熱的Defi議題來看,各Defi都在考慮將BTC納入Defi的資金選項,唯有資產能互通於各種主鏈之間,將流動性擴展開來,才能建構出健全的金融生態。

對區塊鏈的開發者而言,Polkadot提供了一個新的技術場域,甚至可以說是開發者的樂園,在這裡可以打破公鏈的框架,也能探索更多區塊鏈在商業應用上的可能。但,再好的經濟模型與技術架構,有時候也抵擋不了人性血淋淋的貪婪。如今,Polkadot的進程尚未實現到治理階段,也是眾多投資人所關心的議題之一,在這個任何事都有可能發生的2020,我們該做的就是充實對區塊鏈技術的了解與認知,謹慎地配置自己的資產。

(原文連結)

近期活動

  • 第五屆《WHATs NEXT!5G超元年》數位行動產業高峰會

匯率轉換器

熱門貨幣

1
icon BITCOIN
lineGraph
  • 漲跌幅(24h) -0.29028%
  • 價格 $11542.88
  • 成交量(24h) $24,602,739,714
2
icon ETHEREUM
lineGraph
  • 漲跌幅(24h) -0.41724%
  • 價格 $384.31
  • 成交量(24h) $14,049,612,515
3
icon XRP
lineGraph
  • 漲跌幅(24h) -1.94392%
  • 價格 $0.285906
  • 成交量(24h) $2,750,278,139
4
icon TETHER
lineGraph
  • 漲跌幅(24h) -0.11501%
  • 價格 $0.999408
  • 成交量(24h) $37,438,602,824
5
icon CHAINLINK
lineGraph
  • 漲跌幅(24h) 23.2828%
  • 價格 $15.46
  • 成交量(24h) $1,676,497,528
6
icon BITCOIN CASH
lineGraph
  • 漲跌幅(24h) -0.23064%
  • 價格 $287.91
  • 成交量(24h) $3,313,113,499
7
icon CARDANO
lineGraph
  • 漲跌幅(24h) -1.03905%
  • 價格 $0.137199
  • 成交量(24h) $491,864,699
8
icon BITCOIN SV
lineGraph
  • 漲跌幅(24h) -2.02509%
  • 價格 $208.19
  • 成交量(24h) $945,284,598
9
icon LITECOIN
lineGraph
  • 漲跌幅(24h) -1.8995%
  • 價格 $54.79
  • 成交量(24h) $2,372,085,628
10
icon BINANCE COIN
lineGraph
  • 漲跌幅(24h) 0.83883%
  • 價格 $21.93
  • 成交量(24h) $311,295,242

貪婪指數

Crypto Fear & Greed Index

礦工費 & 處理時間 (Ethereum)

  • gas fastest

    Fastest

    ~m

    Gas Price (gwei):NaN

  • gas fast

    Fast

    ~m

    Gas Price (gwei):NaN

  • gas slow

    Slow

    ~m

    Gas Price (gwei):NaN

  • 礦工費越高將會加快您的交易處理速度

本網站不支援IE,請使用Chrome瀏覽器以達最佳瀏覽效果。