1. 程式人生 > >一文秒懂以太坊到底為什麼要轉Casper?

一文秒懂以太坊到底為什麼要轉Casper?

6月3日舉行的2018以太坊技術及應用大會上,V神在題為“Casper與分片技術最新進展”的主題演講中,再次對以太坊的分片技術進行了詳細介紹。

那麼,最近V神總說的分片技術和Casper究竟是什麼?以太坊到底為啥一定要從PoW轉換成PoS?

與以太坊效能擴充套件需求相矛盾的POW機制

眾所周知,以太坊的定位是一個底層的智慧合約開發平臺,其去中心化的公有鏈特效能夠為智慧合約以及去中心化應用(Dapp)的執行提供可信的執行環境。為了保障網路的去中心化,以太坊同樣選擇了與比特幣相似的工作量證明POW機制;但是與比特幣不同的是,在以太坊的節點上除了像比特幣那樣執行一個錢包賬本外,同時需要執行一個被叫做以太坊虛擬機器的東西;不僅僅每個節點上的賬本都完全相同,其每個節點虛擬機器上所執行的程式也是一樣的,這也是為什麼以太坊被稱為一臺全球計算機的由來。但是當所有的節點都只能同時做一件事的時候,這就意味著整體網路能夠處理的任務量是非常有限的

,其受制於網路中單個節點所能處理任務的上限。去年的以太坊微信status專案的ICO、以太貓遊戲等所造成的以太坊擁堵問題一次又一次地將這個問題擺在我們面前。

分片技術(Sharding)被Vitalik以及大多數以太坊開發者認為是解決以太坊效能的主要解決方案,但是分片技術卻恰恰是與當下的POW機制相矛盾的,或者說在POW上加分片很難實現。分片是一個從資料系統中產生出來的術語,是指把一個大的資料庫進行水平分割槽,分成更小、更快、更容易管理的部分,這些小的資料就是大的資料庫的片;而在以太坊上簡單說就是將以太坊網路劃分成若干能夠處理交易的較小元件式網路,不同的驗證節點會因為不在同一分片而分別執行不同的任務,因此如果整個網路擁有了100個分片,那麼整體的處理效能將會是原來的100倍。

假設在工作量證明的機制下,網路被分成了100個分片,那這個時候較小的片就很容易處在被惡意礦工掌控的危險之中,因為攻擊者只需要1%的hash算力就可以完全控制一個分片;所以以太坊要實施分片,那麼就需要改變以太坊的POW共識機制。

以太坊如何來實施POS

雖然以太坊最終將要轉向POS,但是在此之前,開發者們需要先解決權益證明機制的一個最大缺陷。在pos機制下,惡意的節點驗證者可以在沒有任何損失的情況下去把自己的幣押在分叉鏈上推動硬分叉(而pow機制下,礦工分叉需要消耗算力資源);這種所謂的“無利害關係”問題是以太坊必須要解決的問題,他們需要一種解決方案,既可以實施POS,同時要減少“無利害關係”問題。因此,以太坊開發者們提出了他們不同於其他POS的Casper協議,在這個協議下,系統可以快速懲罰節點的作惡行為。

Casper的工作機制:

  • 驗證節點需要在網路上押下一定比例的以太幣作為保證金;當他們發現一個可以被新增到鏈上的區塊時,他們將以通過押下賭注來驗證它。

  • 如果該區塊最後被新增到鏈上,那麼驗證者們將得到一個跟他們的賭注成比例的獎勵。

  • 但是,如果某個驗證者採用一種惡意的方式行動、試圖做“無利害關係”的事,他們將立即遭到懲罰,他們所有的權益都會被砍掉。

通過這些苛刻的激勵機制,包括懲罰離線的驗證者等等,可以讓整個網路得以安全執行,為分片的實施提供必要條件。想想看,假設你是一個節點驗者將自己持有的ETH作為保證金存入網路,以最大化網路利益的方式來行事也有利於自己的利益;當你知道作惡會使自己損失保證金的時候,你還會那麼做嗎?

Pow VS Pos,誰更去中心化


從這張圖我們可以看到,目前大部分的以太坊算力基本集中在幾個大礦池手中,大的礦工比其他礦工有更大的機會挖到區塊獲得獎勵;而這意味著大礦工可以獲得更多錢,進而買的起更好的裝置使用更先進的礦場資源。

我們在經濟學上有個規模經濟的概念,意思是大的企業可以通過提高產量來降低他們單個產品的邊際成本;而大礦工可以通過大規模的礦場來分攤固定成本,另外作為一個更大的經營主體,其擁有更強的議價能力。這就意味著,一個大的礦工投資一萬元比一個小礦工投資一萬元能夠獲得更多的雜湊算力以及挖更多的幣,雖然他們投入的資金是等量的。

但是在POS權益證明機制中,每個人投資一份保證金所需要的資金是相同的,規模經濟在這裡並不會起到太大的左右,這與我們以往所認知的POS更容易加大貧富差距的觀點似乎提供了一個對立面的證據。因此為了防止算力中心化導致礦工作惡的潛在風險也是以太坊轉POS的一個重要原因。

再說POW機制的高能耗


如圖,如果把目前比特幣和以太坊挖礦的年用電量加起來放進國家年用電排行榜的話,比特幣和以太坊用電量之和能排到第34,超過了巴基斯坦一年的用電量,且增速飛快;其中目前比特幣的用電量佔全球用電量的0.31%,以太坊則是0.09%。


而如果將比特幣、以太坊與VISA的耗電量相比,則結果如下圖; 

還有一組更有趣的資料,如果把比特幣的能源消耗平攤在每筆交易上的話,比特幣一筆交易所消耗的用電量可以滿足32個美國家庭一天的用電需求,而以太坊一筆交易所消耗的用電量則可以供應2.24個家庭一天的用電量。  

雖然比特幣和以太坊的挖礦機制保障了這兩個世界上最大的區塊鏈能夠這麼多年穩定執行,其自然是非常具有價值的;但是我們仍然需要考慮,如此日益增長的高成本挖礦會不會有更好的方式去避免;而以太坊的Casper有可能會成為替代高耗能挖礦的一種解決方案。

以太坊轉POS的程序

近期,以太坊社群已經正式釋出了其Casper的第一個版本Casper FFG;一旦Casper FFG被實施,那麼以太坊將會先進入一個POW+POS混合挖礦的階段;這個階段大多數的區塊仍然是通過POW來產出,而有1%的區塊則會開始交給POS節點;這樣可以讓整個網路以較為平緩的方式向POS來進行過渡;而完全切換到POS可能會到以太坊發展路線圖的第四階段“寧靜”。

雖然這一天可能還有較長的時間,但是在這個過程中,以太坊的礦工可能需要提早去扶持和參與一些其他的GPU挖礦幣種;如果長期看好以太坊的未來,那麼則應該在這個階段多挖多囤ETH,這樣也可以在以太坊完全轉向POS後作為POS節點來繼續得到更多的ETH獎勵。