今年5月,我們發(fā)布了Harmony基于競標(biāo)的抵押機制的初步設(shè)計。從那時起,我們收到了來自不同方面的反饋和建議,包括抵押即服務(wù)(staking-as-a-
今年5月,我們發(fā)布了Harmony基于競標(biāo)的抵押機制的初步設(shè)計。從那時起,我們收到了來自不同方面的反饋和建議,包括抵押即服務(wù)(staking-as-a-service )公司、個人驗證者、以及以太坊的創(chuàng)始人V神。我們認真地對待這些反饋意見,其中包括頻繁競標(biāo)所帶來的操作負擔(dān)、以及需要連續(xù)驗證7個epoch(7天)的過高硬性要求。
此外,對于這個設(shè)計,還有一些沒有解決的問題,例如如何支持(代幣)委托以及如何在基于分片的區(qū)塊鏈中實現(xiàn)出塊獎勵的復(fù)利(block reward compounding)。通過本文,我們討論一下PoS系統(tǒng)的設(shè)計思想,并隆重推出Harmony的最新抵押機制-有效抵押證明(Effective Proof-of-Stake: EPoS)。EPoS旨在解決所有這些問題,同時仍然保持區(qū)塊鏈的去中心化。
如何選擇驗證者
目前大多數(shù)的PoS區(qū)塊鏈都有所謂”委員會“的概念,委員會是一組擁有權(quán)利產(chǎn)生和驗證區(qū)塊的驗證者(根據(jù)具體區(qū)塊鏈,也叫出塊者、超級節(jié)點等等)。通常,委員會的席位數(shù)量是有限的(例如EOS為21,Cosmos為100)。所謂驗證者選舉的問題基本上就是以什么機制來決定誰在委員會中獲得席位。理論上講,這和如何在現(xiàn)實世界中分配有限資源的經(jīng)濟問題是類似的。在經(jīng)濟學(xué)中,分配有限資源的方式可以是(但不限于):
1)通過定價或競標(biāo),這意味著價高者得之;
2)按照社會標(biāo)準(zhǔn),比如社會地位和聲譽;
3)按照時間消耗多少,比如排隊掛號,按工齡分配福利等;
4)通過隨機選擇,比如彩票,搖號購車等;
事實上,委員會中選擇驗證者的方法正是通過類似的手段來解決的。讓我們來看看現(xiàn)有PoS中的一些常見方法:
第一種:根據(jù)抵押代幣的數(shù)量(Cosmos,Polkadot):在這個模型中,抵押金額最高的若干個驗證者獲得有限數(shù)量的席位。這與現(xiàn)實世界中的競標(biāo)非常相似。我們最初的基于競標(biāo)的設(shè)計也屬于這一類。
第二種:在所有抵押者之間隨機選擇(以太坊2.0,Tezos):該模型對潛在的驗證者的抵押數(shù)量有特定的最小要求。例如,以太坊2.0需要至少32個以太幣,Tezos需要8,000XTZ,才有資格被隨機選擇進入委員會。該模型基本上是定價和隨機選擇的組合。
第三種:通過社會聲譽和投票(EOS,Tron):在EOS中,有限的21個區(qū)塊生產(chǎn)者由驗證者從代幣持有者獲得的投票數(shù)量決定,這種類似社會聲譽的尺度是存在于鏈下的標(biāo)準(zhǔn)。
其實,PoS中選擇驗證者的方法不僅限于上述三種標(biāo)準(zhǔn),時間因素也是一種,比如Peercoin就是利用持幣時間(以及持幣數(shù)量和一定隨機性)來決定誰擁有出塊權(quán)。
一般而言,我們認為第一種依據(jù)鏈上代幣抵押來選擇驗證者的機制是最有效、經(jīng)濟上最安全的方式,因為代幣抵押將驗證者的利益與區(qū)塊鏈本身的安全緊密綁定在一起,大量抵押代幣后,驗證者是不會有動機去攻擊自己代幣所在的鏈的。對于EPoS的設(shè)計,我們決定采用第一種而不是第二種方法,原因在于其簡單性和有效性。第二種方法雖然為更多的抵押者提供了公平的機會,但問題是資源利用效率不高,事實上,在很長一段時間內(nèi),潛在的驗證者只是閑置在那里,等待被選中,這會大大增加驗證者的機會成本。
如何分發(fā)區(qū)塊獎勵
通常,對于每個成功確認的區(qū)塊,PoS系統(tǒng)會為驗證者分發(fā)區(qū)塊獎勵,以激勵他們參與共識。在大多數(shù)現(xiàn)有的PoS區(qū)塊鏈中,驗證者將按照他們抵押的數(shù)量的比例獲得等比例的區(qū)塊獎勵。這種設(shè)計存在“富人越來越富”的問題,最終導(dǎo)致抵押代幣過于集中。例如,在撰寫本文時,Cosmos的100位驗證者中,排名前10的驗證者持有超過50%的抵押代幣。
可以緩解這個問題的另一個選擇是,無論驗證者的抵押數(shù)量是多少,給所有人同等數(shù)量的區(qū)塊獎勵 - 這也是我們在最初的基于競標(biāo)的抵押設(shè)計中所提出的想法(類似的想法也是Polkadot的抵押模型NPoS的基礎(chǔ))。給予同等獎勵可以鼓勵驗證者均勻地分配抵押的代幣,因為和小投入的抵押者相比,投入多的抵押者的回報率會更低。盡管如此,持幣大戶仍然可以通過拆分他們的抵押代幣以多個抵押者的身份去參與PoS。因此,“富人越來越富裕”的問題并未得到徹底解決,而只是在某種意義上得到了緩解。
除了上面討論的設(shè)計因素之外,其他更現(xiàn)實的因素對于創(chuàng)建一個對驗證者友好的抵押經(jīng)濟也是至關(guān)重要的。獲取區(qū)塊獎勵的復(fù)利是驗證者最大化其回報的重要方法。在這方面,提供相同獎勵的設(shè)計是沒法支持復(fù)利的,因為如果驗證者把新的區(qū)塊獎勵再次加入抵押中,不會產(chǎn)生更多回報。
此外,對代幣委托(delegation)的支持一直是PoS區(qū)塊鏈的標(biāo)準(zhǔn)要求,因為它允許普通代幣持有者在不需要運行驗證者節(jié)點的情況下進行抵押并獲得回報。我們之前基于競標(biāo)的初步抵押機制設(shè)計并不適合代幣委托,因為競標(biāo)是一種不確定的行為,委托人的代幣在用于競標(biāo)的過程中難免出現(xiàn)使用不當(dāng)或不充分的問題。
而對于Harmony的分片系統(tǒng)設(shè)計來說,其中有一個特定的設(shè)計約束:對于每個分片,它的抵押量只有整個系統(tǒng)的N分之一(N是分片數(shù)量),它需要包含大量的具有同等權(quán)利(抵押數(shù)量)的驗證者,以分散大戶在分片中的力量(有關(guān)更多詳細信息,請參閱我們的技術(shù)白皮書)。否則,擁有大量抵押代幣的驗證者可以輕易攻擊單個分片(即1%攻擊)。
綜上所述,我們的設(shè)計目標(biāo)如下:
● 驗證者之間的抵押代幣量需要均勻分布(避免抵押中心化)
● 支持簡單明細的委托機制
● 支持區(qū)塊獎勵的復(fù)利
EPOS機制防止抵押中心化
Harmony的抵押證明機制EPoS(Effective Proof-of-Stake),這是一種高效的抵押機制,可以避免抵押代幣出現(xiàn)中心化,同時仍然支持抵押復(fù)利和代幣委托,適合需要大量同等權(quán)利的驗證者的分片系統(tǒng)。
驗證者選取
在EPoS中,我們將基于抵押者代幣數(shù)量的排名來選取驗證者。具體而言,對于每個epoch(約1天),前1600名抵押者將獲得有限的1600個驗證者席位(4個分片* 400個席位)。當(dāng)epoch發(fā)生演進,新的抵押排名將決定誰是下一個epoch的驗證者。
基于有效抵押的區(qū)塊獎勵
正如前文提過,無論是按抵押比例的區(qū)塊獎勵機制還是一視同仁的區(qū)塊獎勵機制都不能完全滿足我們的設(shè)計目標(biāo)(包括抵押的均勻分配以及抵押復(fù)利的問題)。在EPoS中,驗證者的區(qū)塊獎勵不是按照它的實際抵押量來分配,而是按照其”有效抵押量“的比例來分配,有效抵押量的共識定義如下。 我們使用median_stake來表示前1600名抵押者的中位數(shù)抵押量,而actual_stake是每個驗證者持有的實際抵押數(shù)量。
這里,c是協(xié)議參數(shù)(例如,c = 0.15)。 驗證者的有效抵押量本質(zhì)上是它的實際抵押量被上限閾值(1 + c)* median_stake和下限閾值(1-c)* median_stake限制之后的數(shù)量。
除了區(qū)塊獎勵之外,每個驗證者在共識中的投票權(quán)也由驗證者的有效抵押按比例確定。
前1600位驗證者的實際抵押量曲線和有效抵押量
隨著有效抵押的引入,排名較高的驗證者實際上會因為抵押了太多代幣而受到一定的經(jīng)濟懲罰,而排名較低的驗證者則可以享受額外的獎勵。有效抵押充當(dāng)均衡器,推動驗證者之間更均勻地分配抵押代幣,避免集中。
為了實現(xiàn)復(fù)利,藍色和綠色區(qū)域中的驗證者可以通過在同一驗證者節(jié)點中反復(fù)抵押區(qū)塊獎勵來直接獲得復(fù)利,而黃色區(qū)域中的驗證者只能通過啟動新驗證者節(jié)點的方式來獲得更多區(qū)塊獎勵。對于持有大量代幣的礦池而言,這種設(shè)計迫使其自身去中心化,從而避免單點故障。
此外,EPoS可以支持直觀有效的代幣委托,代幣持有者可以根據(jù)驗證者的傭金率、正常運行時間和其在排名中的位置,將代幣委托給一個或多個驗證者。在扣除驗證者設(shè)定的傭金費用后,塊獎勵將按委托代幣的比例分配給委托者。對于委托者來說,委托給綠色領(lǐng)域的驗證者在經(jīng)濟上會獲得更高回報,這也可以有效避免大量代幣被委托給頭部驗證者,避免抵押中心化。
EPoS的這些設(shè)計,完全實現(xiàn)了避免抵押去中心化,同時支持委托和抵押復(fù)利的設(shè)計目標(biāo)。
抵押削減機制
對于雙重簽名
● 至少削減2%的抵押代幣。同時削減的數(shù)量將隨著同時間被消減的驗證者的數(shù)量呈線性增加(例如,如果有三分之一的驗證者雙重簽名,則每個人的削減比例上升到33%)
● 值得一提的是,這個削減規(guī)則和之前有效抵押機制對大戶自身的去中心化效果相得益彰,如果大戶的多個抵押者節(jié)點同時發(fā)起攻擊,他們的抵押代幣也將會受到更嚴重的削減。
對于節(jié)點不在線
● 每三個小時的不在線,驗證者的投票權(quán)將被泄露25%,泄露是指部分代幣被強制移出抵押,而并不損失所有權(quán),這點和消減有區(qū)別。
● 在連續(xù)12小時不在線后,驗證者將喪失所有投票權(quán)并進入停滯狀態(tài)。停滯的驗證者將接受0.1%代幣消減的懲罰。如果驗證者再次上線,其投票權(quán)將重新恢復(fù)。
● 對于那些處在停滯狀態(tài)的驗證者,在下次驗證者選舉中,他們不會被考慮在內(nèi)。他們可以通過發(fā)送“請求加入”交易,來重新參與之后的驗證者選舉。
最后
抵押機制和激勵模型是PoS區(qū)塊鏈的核心組成部分。在某種程度上,它們與區(qū)塊鏈協(xié)議一樣重要。關(guān)于當(dāng)前PoS區(qū)塊鏈的抵押機制和激勵模型的信息分散在許多地方,很難清楚地了解這些系統(tǒng)的區(qū)別和具體內(nèi)容。在這方面,我們對于幾個主流的PoS項目的抵押和激勵機制總結(jié)了一份對比圖表,其中也包括了有關(guān)Harmony’s抵押工作流程的更多詳細信息。
最后,對于想要在主網(wǎng)之前嘗試EPoS機制的抵押驗證者們,歡迎加入我們的Pangaea游戲,這是一個在Harmony測試網(wǎng)絡(luò)上的帶有激勵模型的游戲。 大家在Pangaea中提出的反饋意見將有助于進一步優(yōu)化EPoS的設(shè)計,為登陸主網(wǎng)做好準(zhǔn)備。(蘭榮堅)