BTC
ETH
HTX
SOL
BNB
查看行情
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt

Eth 2.0 AMA 第二期| Vitalik:Eth 2.0 沒有未解決的研究挑戰

星球君的朋友们
Odaily资深作者
本文約9287字,閱讀全文需要約14分鐘
ETH 2.0有什麼新變化?
AI總結
ETH 2.0有什麼新變化?

編者按:本文來自Unitimes,Odaily經授權轉載。Ethhub,Odaily經授權轉載。

,Odaily經授權轉載。

,Odaily經授權轉載。

以太坊2.0 研究團隊於2019 年7 月15 日在Reddit 上做了一個持續時間長達12 小時的AMA (有問必答)活動,本次AMA 主要由以太坊創始人Vitalik Buterin,以太坊2.0 研究者Danny Ryan、Justin Drake 以及Carl Beekhuizen 來回答Reddit 用戶的提問。

問題:你們認為在未來實施Eth2.0 的階段1 或階段2 之前,Eth 2.0 研究中最大的未解決挑戰是什麼 ?

Vitalik Buterin:我真的認為當前沒有未解決的研究挑戰。在研究方面,主要是“我們如何更優雅地來實施,並佔用更少的代碼行和更少的邊緣情況”。

Danny Ryan:需要更好地理解無狀態和高度抽象的執行模型中可能涉及的激勵機制和各種參與者。為了更好地理解相關的設計和積極構建原型來審查相關的想法,以太坊基金會的eWASM 團隊和ConsenSys 的Quilt 團隊都做了大量的工作。

Ethical-trade:我沒想提問題,就是想以全體投資者和愛好者的名義來對你們表示感謝。儘管總有一些人會抱怨,但我們大多數人都非常支持你們所做的努力。我們非常感謝你們正在建設的去中心化未來。

問題:此前,階段0 (即信標鏈) 的非正式發布日期為2020 年1 月。你們覺得這個日期現實可行嗎 ?

Carl Beekhuizen:感謝你注意到這個日期是非正式日期:) 明年年初推出(信標鏈)是我個人的目標,但在那之前還有很多事情要做!我們需要完成的事情有:長時間運行的測試網絡(不管這是如何定義的),對抵押合約(deposit contract) 的形式化驗證,以及準備好的(Eth 2.0) 客戶端,但是現在看起來一切都將按時完成。我們也不想為了趕上某個任意日期而匆忙開出帶有很多bug 的軟件客戶端。

Danny Ryan:各個(Eth 2.0)客戶端團隊都做得很好,並在繼續挑戰極限。我期待在未來幾個月裡取得令人興奮的進展,但我也預期最後的路程可能會很長。 2020 年初(啟動信標鏈)是很現實的,也是我們的目標。

  • dmihal:我對Eth 2.0 最大的擔心是它會扼殺可組合性(composability)。難道大多數dapp (去中心化應用)不會最終選擇在同一條分片鏈中進行搭建嗎?就比如與MakerDAO 搭建在同一條分片鏈中,這樣他們就可以使用Dai 了 ?

  • Justin Drake:分片之間的可組合性無疑還是個未知的領域,但我們有理由保持樂觀:

  • 為了促進跨分片交易,所有分片都是被設計為同質性的(這點與Polkadot 或者Cosmos 不同);

  • 有一些設計模式可以將分片之間的界線抽象化。這些設計模式將更容易在可編程執行引擎中使用。

由於驗證者對分片的證明,各分片被設計成能夠友好地實現“快速樂觀的最終性(fast optimistic finality)”,對分片的證明類似於當前Eth 1.0 鏈上的區塊確認。也就是說,在實踐中,由於單個分片能夠快速實現最終性,所有的分片可以充當一條具有邏輯性的區塊鏈。

UI (用戶界面) 層也可以將分片之間的界線抽象化。

nicknle:我只是想說…整個團隊和項目都非常棒。你們必鬚麵對來自市場的大量噪音,但看到你們堅定不移的樂觀和積極態度來為全世界謀福祉,並突破技術、金融和社會的界線,這確實令人鼓舞。繼續努力吧,夥計們。

Danny Ryan:謝謝!我只是努力讓事情向前發展,而不是太關注市場波動和那些噪音。

  • 問題:為什麼有這麼多團隊在搭建Eth2.0 客戶端?我知道客戶端多樣性的重要性,但你們不覺得似乎6 個客戶端會帶來更多的壓力嗎?支持這麼多的客戶端還需要在資金方面分配更多的資源。你們認為哪個客戶端將是以太坊2.0 的Geth 和Parity 客戶端?

  • Justin Drake:客戶端多樣性方面有幾點需要注意:

  • 當前正在開發的客戶端不止6 個,而是8 個;

  • 我預計客戶端會出現合併--一些客戶端將可能撐不過2020 年;

  • 我預計各客戶端會實現專業化--某個客戶端會專注於瀏覽器(比如Lodestar),或者專注於資源受限的設備(比如Nimbus),或者專注於企業(比如Artemis),又或者專注於原型設計(比如Trinity) 等等;

在(信標鏈) 啟動時,需要至少兩個客戶端處於生產就緒狀態。我預計先行的優勢會很強;

在某種程度上,以上所有的情況都曾經發生在Eth1.0 舊鏈上。

Vitalik Buterin:我們絕對不想看到雙頭壟斷的局面!就我個人而言,理想的情況是沒有任何一個客戶端的節點數會超過整個網絡的1/3,這樣任何客戶端中的任何軟件錯誤都不會導致整個網絡的停止運行。雖然如果沒有哪個客戶端的節點數會超過整個網絡的1/2,這也沒什麼問題,也能為我們帶來同樣的好處。我希望網絡的節點會出現冪律分佈,而且很有可能其中一些客戶端將不會在主網上被大量使用。

Danny Ryan:我認為之所有這麼多的客戶端會來完成這項艱鉅的工作,是因為Eth2.0 不僅是一項純粹的技術挑戰,也是一個在以太坊和加密貨幣領域留下足蹟的機會。我很高興看到有這麼多優秀的團隊在做著這項艱鉅的工作,但最近,我更關注於尋找貢獻者來做核心客戶端實現之外的增值工作,比如形式化驗證、協議的學術分析、測試、輕客戶端、web3 接口和開發者工具、能夠接入任何底層節點且具有強大的用戶體驗(UX) 的驗證者客戶端等等。

問題:你們如何反駁有關Eth 2.0 過於復雜的批判?

Vitalik Buterin:在過去的一年裡,它已經變得相當簡單。如果你對Eth2.0 規範進行字數統計,就會發行當前規範的字數比以太坊黃皮書還要少。 Eth 2.0 中有很多東西比Eth1.0 簡單得多。但肯定也存留這一些複雜性,我非常關注於將復雜性最小化。

Justin Drake:雖然研究的道路有些曲折和難以跟上腳步,但最終的規範可以說是簡單明了的。期待更多的教育性材料能夠強調當前Eth 2.0 設計的簡單性。階段0 大約需要指定1024 行代碼(假設以SHA256 和BLS12-381 為原語)。我預計階段1 和階段2 加起來將有1024 行代碼(假設以WASM 為原語)。

問題:當我質押了32 ETH 之後,一旦被罰沒(slashing) 了,會發生什麼事情?如果我質押的ETH 被罰沒至少於32ETH,我會被驅逐出驗證者行列嗎?

Justin Drake:當驗證者被罰沒時會被驅逐出去。還有另一種驅逐機制,即當你累計的(非slashing 導致的)懲罰使得你的餘額低於16 ETH 時,你也會被驅逐出去。

Danny Ryan:你也會損失一定量的ETH。當前設置的最低損失量是1 ETH。如果最近一段時間內你還發生了一些其他滿足罰沒條件的行為,還會有額外的懲罰。如果最近有更多的驗證者被罰沒了,那你會損失更多的ETH。而如果最近有1/3 左右的驗證者被罰沒了,就會發生最大程度的懲罰,即你會損失所有質押的ETH。

問題:當前有關從Eth1.0 向Eth2.0 遷移的計劃有什麼想法呢?

Vitalik Buterin:當前的方式就是將Eth1.0 作為一個執行環境調入到Eth2.0 鏈之中。在實踐中,這意味著我們將需要在Eth1.0 鏈上進行一次硬分叉,從而調整一些gas 費用(讀取存儲或者賬戶的操作碼的gas費用將上升至2,000-10,000),在這之後的某個時候,我們將會在某個區塊高度將Eth 1.0 鏈的狀態根轉移到Eth 2.0系統中。我的確認為讀取存儲/ 賬戶的操作碼的gas 費用將會上升,合約開發者應該注意到這一點並做好相應的計劃。

問題:對於那些持有32 ETH 但對加密技術知之甚少的人而言,參與staking 會很容易嗎? “普通人”也可以參與並獲取收益嗎? Staking 會給參與者帶來損失ETH 的風險嗎?我想知道的是,除非“故意”做出有損網絡的事情(比如由於你的互聯網供應商出現問題,導致你的驗證者節點離線),我們是否可以毫無風險地參與staking 呢?

Justin Drake:我預計市場中將會出現針對staking 的行業,比如包括質押池(staking pools) 在內的基礎設施(如Coinbase 等提供的中心化質押託管服務,以及其他去中心化質押池),還有一些即插即用的“validator in a box”解決方案。在風險方面,對於有時短時間離線的驗證者節點而言,相應的懲罰應該是很小的。

問題:假設以太坊達到了100 萬TPS,賬本的大小將每天增長1TB,對此有什麼解決方案嗎?對於賬本大小的增長,你們的預計是什麼?相應的解決方案是什麼呢?

Danny Ryan:帶有分片的Eth 2.0 預計將能處理大約10 MB/s 的數據可用性。這是在分片鏈中達成共識的數據,並保證數據在2 週左右的時間內可用。

當前處理狀態和狀態執行的方式是採用“無狀態(stateless)”的方法,即區塊必須包相關狀態的默克爾見證(Merkle witnesses)才能完成交易的執行。這將會減少任何共識節點必須存儲的狀態量,但確實會提出有關狀態大小的其他問題,比如由誰來存儲狀態、用戶如何獲取狀態等等。

事實上,整個狀態執行都被抽象化了,這樣我們就可以嘗試多種方案來處理這個問題(比如狀態租金、讓用戶/dapp 存儲自己的數據等等)。 Alexey Akhunov 在過去一年左右的時間裡研究的狀態租金(state rent) 將可能會發揮作用。

問題:我聽說了很多有關staking 獎勵的宣傳,當驗證者被罰沒(slashing) 時的懲罰是什麼呢?針對不同的不當行為(比如驗證者客戶端離線,或者重複簽名等),網絡會有不同的懲罰嗎?當前“離線18 天將減少60.8%”的規定依舊有效嗎?

Carl Beekhuizen:我認為你是將slashing (罰沒) 和inactivity leak (驗證者不活躍而受到的懲罰) 混為一談了。

https://notes.ethereum.org/9l707paQQEeI-GPzVK02lA#Why-are-the-Casper-incentives-set-the-way-they-are

Inactivity leak 是指當驗證者節點離線18 天,且信標鏈停止了“finalizing”進程,那你質押的金額將會“在18 天內減少60.8%”;

Slashing 是指當驗證者進行了惡意行為時,其質押的金額就會減少。假設客戶端軟件沒有問題,slashing 基本上不太可能發生在你的身上。最低的slashing 懲罰是1 ETH,但懲罰會隨著與你同時被罰沒的人的數量的增加而增長。有關懲罰的更多信息請參閱:https://ethresear.ch/t/layer-2-state-schemes/5691問題:當前在Eth 2.0 的研究進展方面最令人興奮的研究是什麼?
的研究最為興奮。 Karl Floersch 等人在Optimistic Virtual Machine (OVM)

方面的研究也非常有趣。

方面的研究也非常有趣。

問題:研究者們對於當前Eth 2.0 的經濟激勵機制滿意嗎?

Vitalik Buterin:我並不認為當前我們有必要擔心具體的數字(備註:V 神是指信標鏈中質押的ETH 總數和相應的ETH 年增發率以及驗證者年收益率),不管對於驗證者來說相應的獎勵是否足夠,網絡都會啟動的。

問題:信標鏈上線之前,需要多少個Eth 2.0 客戶端團隊必須交付完成的客戶端?

Justin Drake:至少2 個,理想情況是3 個。

問題:我在考慮在階段0 期間參與staking,但我有些擔心inactivity leak(因不活躍而受到懲罰)。我想知道如果我改主意了,如何才能停止/ 暫停成為一名驗證者呢?我問這個問題是因為在某些情況下,我可能會離線一段時間,但我不想讓我的資金因此而不斷減少。

Vitalik Buterin:當你處於離線狀態時,只有當超過1/3 的其他驗證者也同時處於離線狀態,此時你受到的懲罰才會很大。除此之外,離線的懲罰是非常小的,只要你的在線時長超過了50-67%,那你就會處於淨盈利狀態(不包含電腦成本等)。這種激勵機制的很寬鬆的,目標是為了鼓勵業餘參與者加入進來,促進去中心化。

Justin Drake:“暫停”成為驗證者的方式是首先退出(這可能僅需要半個小時,但也可能需要幾天/ 幾週的時間,因為存在一個退出排隊機制),之後(想要重新參與驗證時) 再次激活就可以了。

MysticRyuujin:各個Eth 2.0 客戶端團隊是否會覺得他們的客戶端實現將能夠足夠地穩健、足夠安全且足夠易於使用,使得像我這樣的網蟲可以安全地運行他們開發的節點軟件,在上面質押32ETH,且不會因為客戶端存在bug 而被罰或損失ETH 呢?

我最大的擔憂就是,我自己並不會進行惡意行為,但會因為客戶端存在bug 而遭受損失。我已經運行Geth、Parity、Trinity 和EthereumJ (Harmony) 等節點好多年了,這些客戶端存在的時間比任何Eth 2.0 客戶端存在的時間都要久得多,但這些客戶端依舊會有問題,有bug,有時還會崩潰。

Vitalik Buterin:我希望如此! (Eth 2.0) 激勵機制設計的一個關鍵就是,只有當很多其他驗證者同時離線時,相應的懲罰(不管是因離線還是因被罰沒) 才會很高。因此,任何不會同時攻擊所有節點的bug 只會使你損失很少的資金。

問題:我知道現在還為時過早,但對於階段1 和階段2 規範的凍結時間是否有個粗略的估計?

Carl Beekhuizen:階段2 還不太明確,但我希望階段1 規範將在今年第四季度凍結。

問題:1024 條分片鏈,這意味著存在超過131,000 個驗證者槽位... 如果當分片上線時,驗證者數量不夠怎麼辦?

Carl Beekhuizen:由於存在1024 條分片鏈,每個委員會中需要128 名驗證者,因此為了實現每個分片的交聯(crosslink)需要至少131,072 名驗證者。如果驗證者數量少於這個數值,那就會跳過一些分片,從而保證每個委員會中有128 名驗證者。

Danny Ryan:系統可以很自然地處理低至64 名驗證者的情況。在這種情況下,系統安全性會明顯降低,但協議可以在技術上繼續推進。

  • 問題:請簡單地闡述一下為什麼需要開發一條新鏈,而不是繼續發展當前的舊鏈呢?

  • Justin Drake:在Eth1.0 鏈上搭建Eth2.0 鏈會是一個糟糕的設計決策,原因如下:

  • 我們將受到當前Ethe 1.0 鏈gas 上限的限制,這將會嚴重影響新鏈的性能(比如,將無法實現1024 條分片鍊和質押32 ETH 來進行驗證);

  • 我們將混合共識層和應用層。這意味著共識層將受制於應用層的DoS 向量(比如高昂的gas 價格);

  • 我們將受制於舊鏈的EVM (以太坊虛擬機),而眾所周知,將復雜的合約安全地編入舊鏈的EVM 之中非常困難。

Eth 1.0 鏈無法支持BLS12-381;

還有其他一些原因。

問題:不知我的理解是否正確,是不是驗證者數量越多,finalize 所需的時間就越長?

Carl Beekhuizen:在Eth2.0 鏈中,更多的驗證者應該不會導致更長的finalize 時間。通過使用BLS 簽名聚合以及通過將驗證者組成委員會,我們能夠容納數十萬(乃至數百萬) 的驗證者。

問題:我知道預計大約需要質押1,000 萬ETH 才能為網絡提供足夠的安全性。假設某個大型組織獲取了超過50% 的被質押的ETH,並將之用於對網絡發動攻擊,那網絡會發生什麼事情?我所理解的是,這種情況下,那個質押總數更少的一方將會被罰沒,那這個惡意攻擊者是否能夠有效地殺死整個網絡?

Carl Beekhuizen:如果某個大型參與者想要獲取大量質押的ETH 來控制整個網絡,那他將需要購買2/3 以上的所有流通中的ETH,而當他購買時會推動ETH 價格的上漲,這樣一來使得這一攻擊的成本非常高;其次,只有當你的行為被2/3 的驗證者證明是惡意行為時,你才會被罰沒。 PoS 機制的一個很棒的地方就在於,這類攻擊可以很好地被處理。作為一個社區,我們可以聯手通過硬分叉的方式來將惡意攻擊者從當前鏈中分叉出去,這樣惡意攻擊者就沒有了投票權了。攻擊者只是耗費了大量的資金暫時停止了網絡。

而在PoW 鏈中,如果攻擊者購買了具備51% 算力的ASIC 礦機,那就沒有辦法將攻擊者從系統中移除出去了。

問題:作為一名ETH 礦工,我主要關心的是如何為Eth 2.0 做準備。關於如何繼續為以太坊貢獻(和獲取盈利),有任何技巧或建議嗎 ?

Justin Drake:Eth2.0 將不存在挖礦。你也許可以通過諸如Golem 等平台將這些GPU 挖礦設備的算力租賃出去。
問題:大約什麼時候ETH 的增發率將會顯著下降?比如增發率下降10 倍?

Vitalik Buterin:當PoS 鏈開始承載PoW 鏈以保證安全時(這可能會在階段1 或者階段2 時發生),那時可以安全地將PoW

鏈的挖礦獎勵減少約4 倍。當PoW 鏈完全停止運行時,增發率還會進一步降低。

問題:當前由哪個運行中的項目/ 產品可以在短期內改善以太坊的擴容性?

Justin Drake:Layer 2 擴容方案(Plasma、Rollups、狀態通道等)可以在短期內改善擴容性。不幸的是,在2019 年構建Layer 2 解決方案仍然需要解決大量的技術複雜性,但也並非不可能做到!

問題:由於存在來自其他DeFi 產品的競爭性,Eth2.0 的增發率是否足以激勵驗證者呢?未來其增發率是否會根據需要而相應調整呢?

Vitalik Buterin:據我所知,在Compound 平台質押ETH 的年化利率在0.02%,因此我們有很大的競爭優勢。而“在Compound 平台上質押ETH 可以獲得3% 的利率,借出DAI 的利率為6%”這種設計具有誤導性,因為6% 是基於USD (美元)的,而3% 的收益率是基於ETH 的。但隨著越來越多的staking 形式(比如Plamsa、Trubit 以及其他保證金遊戲)的出現,ETH 的質押利率將會上滑。

問題:在階段0 期間,Eth 2.0 幣可以在錢包之間相互轉移嗎?如果可以,你們是否關注交易所將上架Eth 2.0 幣呢?

Carl Beekhuizen:Eth 2.0 幣的轉移只有到階段1 時期才可能實現,那時交易所將會上架Eth 2.0 幣。交易所的上架將有益於維持ETH 幣和Eth 2.0 幣之間的等價。

  • 問題:當前關於將Ether 代幣從Eth 1.0 轉移至Eth 2.0 方面的設計是什麼?

  • Carl Beekhuizen:這取決於你所說的“Ether 代幣”想表達什麼意思:

  • 驗證者可以向抵押合約(deposit contract) 中發送32 ETH,之後這筆存款將轉移至信標鏈上,這樣驗證者就可以在信標鏈上參與驗證了;

對於只是想要將ETH 從Eth 1.0 鏈轉移至Eth 2.0 鏈的人來說,這方面的設計還沒有最終決定,但可能兩條鏈之間會存在一條專用橋,也可能通過抵押合約來實現這一目的;

當前談論有關ERC20/721 代幣在兩條鏈上的轉移還為時尚早。如果Eth 2.0 鏈有了像Eth 1.0 鏈那樣的執行引擎,那這種轉移將非常便捷,但即便沒有執行引擎,可能也可以通過只是將ERC20 代幣的狀態根複製過來,從而實現其轉移。
問題:抱歉我的問題可能有些愚蠢,但我已經好幾個月沒有關注以太坊2.0 了。是否有一個近期發布的日期?關於staking,需要質押多少ETH?現在我們可以知道相應的獎勵了嗎?在以太坊2.0 方面,你們最自豪的是哪個方面?你們認為幣安鏈(Binance Chain) 會是以太坊的競爭對手嗎?提前對你們所付出的時間和努力表示感謝!

Justin Drake:階段0 可能最早將於2020 年1 月3 日啟動。我認為很可能是在2020 年第一季度。需要質押32

ETH,驗證者的獎勵取決於所有驗證者的數量、個體驗證者自身的表現,以及gas 市場。我覺得驗證者的年收益率大約在10% 左右是不足為奇的。我覺得最自豪的就是參與到了這個我認為將以積極的方式徹底改變這個世界的基礎設施的搭建之中。幣安鏈不是以太坊的競爭對手。

問題:當Sharding啟動時,是否會突然就存在1024 條分片鏈?還是分片鏈的數量會隨著使用的增加而逐漸增長?我覺得一開始就啟動大量的分片鏈會導致大量未使用的空間/ 容量。

Carl Beekhuizen:所有的1024 條分片鏈會一次性啟動。逐漸增加分片鏈的數量(可能)會帶來不必要的複雜性。帶有大量未使用容量的分片,其gas 價格會更低,因此會吸引更多的用戶。

問題:我原以為Eth 1.0 鏈只需要升級為Eth 2.0 鏈即可,不需要將舊鏈上的代幣交換成新鏈上的代幣。 Eth 2.0 幣的流通數量會取決於有多少人將Eth 1.0 幣轉換成Eth 2.0 幣嗎?

Carl Beekhuizen:Eth 2.0 鍊是對Eth 1.0 鏈的徹底變革,因此相比於升級,更好的方式是實現一條全新的鏈。 Eth 2.0 幣的流通數量的確在很大程度上取決於有多少人將Eth 1.0 幣轉換成Eth 2.0 幣。當然,Eth 2.0 鏈也會發行新幣來作為驗證者的獎勵,從而也會增加新幣的供應量。但最終,所有Eth 1.0 幣都將會轉換成Eth 2.0 新幣。

問題:隨著最近一些其他區塊鏈平台實現了每秒處理數千筆交易(雖然這些平台並沒有實現分片技術),你們能否想像Eth 2.0 中單條分片鏈也能與這些“全新&快速的區塊鏈平台”一較高下?如果不能,這些區塊鏈平台是如何實現其高性能的? Eth 2.0 是否也能如此?

Vitalik Buterin:這些區塊鏈平台真的實現每秒處理數千筆交易了嗎?通常我的“直覺”是他們吹噓的吞吐量是他們真是吞吐量的10 倍。

如果某條鏈並不活躍,那我並不相信任何有關於這條鏈的數字,因為在實驗室中輕易實現的高數據,在實踐中並不能支撐得住。在試驗期間,以太坊本身也可以實現500-1,000 的TPS,且Plasma 在試驗期間也可以實現數十萬的TPS。如果這些區塊鏈平台在實踐中真的能夠實現1,000 以上的TPS,那為什麼運行在服務器上的節點數如此至少?

問題:階段0 在擴容性方面會有提升嗎?通過Sharding,以太坊每秒能夠處理的交易量將是多少?
Carl Beekhuizen:階段0 的目標就是追踪驗證者的狀態和產生隨機性,因此詢問有關其擴展性方面並沒有多大意義。

在TPS 方面,並沒有明確的答案。一個基本的計算是,如果每條分片鏈都有著與當前Eth1.0 鏈相同的吞吐量,那整個Eth 2.0
系統的吞吐量將是:16*1024=16,384 TPS (假設不存在跨分片交易)。

儘管如此,以上這些數字都是沒什麼意義的,因為Eth 2.0 網絡將會與Layer 2 擴容方案(比如Rollups 和OVM 等)

一起使用,這將有望帶來非常高的吞吐量。

Vitalik
DeFi
开发者
公链
ETH
歡迎加入Odaily官方社群