Casper FFG 與 Casper CBC 的瑜亮情結

A tweet storm explaining the history and state of Ethereum’s Casper research

Juin Chiu
Juin Chiu
Aug 7, 2019 · 12 min read
Image for post
Image for post

前言

以太坊針對 PoS 共識模型的研究最早始於2014年,這些研究後來演變成目前廣為人知的 Casper the Fridenly Finality Gadget(FFG)/ Correct by Construction(CBC) 兩種共識模型,它們分別由兩個不同的團隊開發且存有不少差異。Vitalik 用一系列推文簡述了從2014以來 Casper 的開發脈絡,由於中文社群仍缺乏針對 Casper 開發路線相關的總結,因此譯者特將此系列推文翻譯成中文並且補上一些註解,希望可以成為開發者或研究員在學習 Casper 時的重要文獻,並期望讀者對 Casper 設計理念有更直覺的理解。

簡介

我將要用一系列的推文來解釋以太坊 Casper 共識協定的研究歷史/脈絡/進展,包括 FFG vs CBC 的爭論、混合模型到完全 PoS 的轉換、隨機性扮演的角色、共識機制的設計考量以及其他議題。

無利害關係問題與遠程攻擊

以太坊的權益證明研究始於 2014 年 1 月的 Slasher 協定。雖然 Slasher 演算法並不是非常理想,但它引入了一些重要觀念,特別是利用罰金來解決「無利害關係問題(Nothing-at-Stake Problem)」。然而,我所使用的罰金相當少,單只取消投票獎勵。Vlad Zamfir於 2014 年中加入了,他迅速引入驗證者必須押金的方法。押金是比獎勵還大的數字,做出錯誤的行為將會使押金被取走(這裡是Vlad的覆述)。

Casper CBC

同時,Vlad 開始大量研究機制設計,特別是讓 Casper 更能抵抗寡占。我們也開始研究受到古典拜占庭容錯(BFT)啟發的共識,例如 Tendermint。Vlad 認為古典 BFT 並沒有說服力(他特別不喜歡 BFT 當中的硬門檻,例如 2/3 的 PBFT 節點必須為誠實節點),他想透過一個他稱為「正確建構(Correct by Construction, CBC)」的方法嘗試重新發明 BFT( Vlad 的原話:連結1/連結2/連結3)。

Casper FFG

我試著簡化了 PBFT,將其放入區塊鏈的脈絡,並把它描述為 4 個「砍押金條件(Slashing Condition)」,這些規則闡述哪些訊息的組合是自我抵觸因此違反規則的。我定義了決定區塊是否敲定的規則並且證明了最關鍵的「安全性(Safety)」與「可行活躍性(Plausible Liveness)」:1. 若某區塊被敲定了,則無法在不少於 1/3 驗證者違反砍押金條件下敲定另一個抵觸的區塊; 2. 若某區塊被敲定了,2/3 誠實的驗證者總是可以合作以敲定新的區塊。因此只要有 2/3 誠實的驗證者,演算法就不會推翻之前的決定(安全性)或卡住(活躍性)。最後我將砍押金條件從 4 條簡化成 2 條,並發展成 Casper FFG — 被設計成為任何 PoW/PoS/其他類型區塊鏈提供敲定性的覆蓋層。

FFG vs CBC

Vlad 最初對分岔選擇規則的偏好是「最新訊息驅動 GHOST(Latest Message-Driven GHOST, LMD GHOST)」 — 一種針對 PoS 的改版 GHOST;而我最初的偏好是先採取「混合式 PoS(Hybrid PoS)」,使用 PoW 作為基底的分岔選擇規則。

Casper 與分片開發路線的整合

不幸地是,FFG 的開發慢了下來。以合約實作 FFG 雖然把一些事情變得更容易,卻讓未來要從 EVM 轉到 EWASM 以及從單鏈 Casper 轉到分片 Casper 的工作變得更困難。此外,團隊的研發工作被分成「主鏈 Casper」和「分片鏈Casper」,可想而知在這兩個團隊之間產生了大量不必要的重複工作。

Taipei Ethereum Meetup

台北以太坊社群專欄

Medium is an open platform where 170 million readers come to find insightful and dynamic thinking. Here, expert and undiscovered voices alike dive into the heart of any topic and bring new ideas to the surface. Learn more

Follow the writers, publications, and topics that matter to you, and you’ll see them on your homepage and in your inbox. Explore

If you have a story to tell, knowledge to share, or a perspective to offer — welcome home. It’s easy and free to post your thinking on any topic. Write on Medium

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store