科普 | Eth2 信標鏈:你首先該知道的事(上)
檢查點就是位于一個時段的第一個時隙內產生的區塊。如果某個時段的第一個時隙內沒有產生區塊,則將最近的一個符合要求的區塊認定為檢查點區塊。每個時段都會有一個檢查點區塊;一個區塊有可能同時是多個時段的檢查點。
- 單時段包含 64 個時隙時的檢查點示意圖 -
注意,從時隙 65 到時隙 128 之間都是空塊。時段 2 的檢查點本來應該是時隙 128 處產生的區塊,但因為該時隙被跳過了,所以時段 2 的檢查點仍然是時隙 64 處產生的區塊。時段 3 也類似,時隙 192 被跳過了,因此將時隙 180 處產生的區塊認作時段 3 的檢查點。
時段邊界區塊(epoch boundary block)是一些文獻(比如 Gasper 論文,也是上面這張示意圖的來源)中用到的一個術語,可以認為是檢查點的同義詞。
在發起一次 LMD GHOST 投票時,驗證者也要為最近時段的檢查點投票,投票者希望確立的新檢查點叫做 “目標檢查點”(target)。這種投票叫做 Casper FFG 投票,而且投票中也會包含投票者認定的上一個檢查點,叫做 “來源檢查點”(source)。在上圖中,時段 1 中的一個驗證者的投票將創世塊作為來源檢查點,然后推舉時隙 64 處產生的區塊為目標檢查點。在時段 2,同一個驗證者又為相同的檢查點投票了。
只有被分配到某個時隙的驗證者才需要為該時隙的區塊投票,但是,所有驗證者都要為每一個時段的檢查點發起 FFG 投票。
由所有活躍驗證者總余額的 2/3 所支持的投票內容就是多數票。
某匿名用戶向Base無償贈送“base.eth”域名:4月6日消息,Base官方在推特表示,某位匿名用戶向該項目贈送了“base.eth”域名。
該用戶在與Base溝通時表示,選擇捐贈該域名是因為想要支持公共物品(public goods)的發展,自己并不求從Base或Coinbase處得到任何回報。[2023/4/6 13:48:50]
我們舉簡單一點的例子來說明一下,假設有 3 個活躍驗證者,兩個的余額是 8 ETH,另一個的驗證者余額為 32 ETH。那么,只有包含了那個最大驗證者的投票才可能是多數票;雖然另外兩個驗證者可能都投了另一個檢查點,但是他們的余額總和只占 50%,形成不了多數。
一個時段結束的時候,如果其檢查點得到了 2/3 的總余額支持(形成了多數票),那么該檢查點就被合理化(justified)了。
如果一個檢查點 B 已經得到合理化,其下一個時段的檢查點也被合理化了,那么 B 就被敲定(finalized)了。一般來說,一個檢查點會在兩個時段內得到敲定,大概就是12.8 分鐘。
從平均的角度來看,用戶的交易總是打包在一個時段的中間部分(的區塊中);那么距下一個檢查點就還有半個時段的時間,因此,一筆交易經過 2.5 個時段(16 分鐘)就可以得到確定性(finality)。理想化情況下,超過 2/3 的見證消息會在一個時段的前 22 個時隙內完成打包。因此,交易敲定的平均時長是 14 分鐘(16 + 32 + 22 個時隙)。區塊確認則從區塊見證消息,一步步升級到合理化,再到確定性。用戶自己可以覺得他們要不要等到交易確定,還是更低一點的安全性就足夠了。
- 時隙 64 處的檢查點被合理化,同時敲定時隙 32 處產生的上一個區塊 -
V神:ETH2.0創世區塊將在1小時后啟動:V神剛剛發推稱:“還剩10個epoch,ETH2.0創世區塊將在1小時后啟動。”[2020/12/1 22:45:22]
為簡化敘述難度,下文假設所有驗證者的余額都相同。
(上圖中)時隙 96 處產生了一個時段邊界區塊,而且包含了對時段 2 檢查點的見證消息(投票)。見證消息的數量達到了 2/3 的多數要求。然后時段 2 的檢查點就得到了合理化,同時,上一個合理化的檢查點,也就是時段 1 的檢查點,就被敲定了。時隙 32 處的區塊得到確定性,會使得之前所有區塊都得到確定性。在敲定檢查點的時候,并沒有對同時得到敲定的區塊在數量上的限制。所以,雖然確定性僅在時段邊界的時候產生,見證消息是逐個逐個區塊累加的,下文的 “從創世塊到區塊鏈頂端的歷程” 部分提供了另一種描述。
從時隙 1 到時隙 32 的信標鏈區塊所包含的所有交聯,也會使分片鏈產生確定性。換句話來說,當一個信標鏈區塊得到確定性時,該塊所包含的交聯所對應的分片鏈區塊也得到敲定。交聯本身不足以使一個分片區塊得到敲定,只是對分片鏈的分叉選擇有所幫助。
用同樣的辦法,可以觀察到從創世塊開始的一條故事線。所有的提議者,從時隙 1 到時隙 36,一一提議了一個區塊,而且這些區塊都顯現在鏈上。對于時段 1的所有區塊來說,其檢查點(時隙 32 處的區塊)累積獲得了 55% 的驗證者的見證。在驗證者提議時隙 64 處的區塊時,它也納入了對時段 1 檢查點的見證消息。現在,有 70% 的驗證者都見證了時段 1 的檢查點,因此時段 1 檢查點得到了合理化。完成時段 2 時,時段 2 的檢查點(時隙 64 處的區塊)累積的見證消息還達不到 2/3 的多數要求。時隙 96 處的區塊在提議時,也納入了對區塊 2 檢查點的見證消息,所以,這時候,時段 2 的檢查點也達到 2/3 的多數要求,被合理化了。合理化時段 2 的檢查點同時也會敲定時段 1 的檢查點及所有此前的區塊。
觀點:ETH 2.0升級時的資產遷移對用戶而言可能會有一定風險:投資公司21Shares的研究助理Eliézer Ndinga在談及ETH 2.0升級時表示:“從目前的以太坊區塊鏈到以太坊2.0的過渡需要用戶在區塊鏈之間轉移其ETH,這可能會給嘗試自己這樣做的用戶帶來一定風險,盡管交易所和其他托管機構可能會在這個過程中提供幫助。”(Cointelegraph)[2020/6/21]
有時,合理化一個區塊會敲定兩個甚至多個時段以前的區塊。Gasper 論文討論了這種情況,預計只有網絡高延遲、網絡隔離、遭遇強大攻擊者的極端情況下,才會出現這種事。
確定性對于分片及以太坊區塊的用戶來說是重中之重,因為確定性使他們能夠確定,交易已經永遠寫在鏈上,不可更改了。確定性也降低了跨分片通信的復雜性。沒有確定性,分片內部和分片之間交易的回滾會具有破壞性,甚至讓分片的好處蕩然無存。
一條見證消息里面包括了一個 LMD GHOST 投票和一個 FFG 投票。理想情況下,所有的驗證者每個時段都會發出一條見證消息。一筆見證消息有 32 個時隙的機會被打包到鏈上。這就意味著,一個驗證者可能在單個時段內有兩筆見證消息被打包上鏈。見證消息打包上鏈的時間也決定了驗證者可得的獎勵幅度:在自己所在的時隙就打包上鏈可以得到最多的獎勵;要是等到后續時隙才打包上鏈,驗證者得到的獎勵就會下降。為了給驗證者足夠的時間來準備見證消息,他們會在一個時段以前就預先知道自己所在的委員會。區塊提議者則僅在時段開始之時分配一次。此外,隱蔽領袖選舉研究還致力于減輕對區塊提議者的攻擊和賄賂。
委員會機制使得匯總所有的見證人簽名、變成單個聚合簽名在技術上的優化成為可能。如果同一委員會中的所有驗證者都作了同樣的 LMD GHOST 和 FFG 投票,則他們的簽名可以聚合起來(成為單個簽名)。
為避免過度深入,我們僅討論驗證者激勵相關的 6 種措施:
ETH在2分鐘內漲幅超過1.00%:據火幣全球站數據顯示,ETH/USDT在2分鐘內出現劇烈波動,漲超1.00%,達到1.65%。當前報價為 196.14 美元,行情波動較大,請注意風險控制。[2020/3/10]
見證人獎勵
見證人懲罰
對質押者來說典型的貶值風險
罰沒(slashing)及舉報人獎勵
區塊提議者獎勵
怠惰懲罰(inactivity penalty)
當期見證消息(包含 LMD GHOST 投票和 FFG 投票)與其它多數驗證者一致時,驗證者可以得到獎勵。在 Eth2 Phase 1 階段,驗證者發送交聯也可以得到獎勵。當區塊得到敲定時,驗證者獎勵也就確定下來了。
另一方面,如果驗證者沒有提交見證消息,或者投票支持了一個最終不能得到敲定的區塊,他們也會受到懲罰。
在列舉不太常見的懲罰和獎勵之前,你可能還想知道,成為質押者會面臨怎樣的貶值風險。答案是,你可能失去的 ETH,恰好跟你能賺取的 ETH 數量對稱。如果一個驗證者一年的獎勵回報率是 10%,則作惡驗證者在最壞情況下可能會失去 10%。舉個例子,如果一個驗證者總是離線,或者總是給那些不能得到敲定的區塊投票,則其損失的 ETH 數量,恰與一位總是及時提交見證消息,且所支持的區塊總是得到敲定的驗證者所得的獎勵,在數額上相等。
罰沒(Slashing)的力度下至 0.5 ETH,上至一位驗證者的全部權益。如果一位驗證者所提交的見證消息觸犯了協議所定義的罰沒條件,則 TA 會損失自身權益的至少 1/32,并被驅逐出驗證者隊伍。懲罰的力度就像該驗證者離線了 8192 個時段一樣。協議還會根據相近時間內被罰沒的驗證者數量施加一個額外的懲罰。此種額外懲罰的計算公式是:驗證者余額 × 3 × 被罰沒的驗證者占比。那么,如果占全體驗證者 1/3 數量的驗證者都觸犯了罰沒條件,則他們會失去全部余額。相應地,檢舉這些不軌行為的驗證者將會得到檢舉人獎勵。
行情 | ETH 1小時跌幅超過2.50%:據Bitfinex數據顯示,ETH 1小時內跌幅超過2.50%,現報價177.05美元,價格波動較大,注意風險控制。[2018/11/15]
區塊提議者在所提議區塊得到敲定之后,也會得到一個成比例獎勵。總是在線,并且提議工作做得很好的驗證者,其總獎勵可增加約 1/8。出現罰沒事件的時候,提議者也會因為打包罰沒證據而得到一小筆獎勵。在 Eth2 Phase 0 中,所有的檢舉人獎勵都會給予區塊提議者。
以太坊 2.0 系統中機制眾多,對這些機制的評價應從所有機制的整體效果出發。最末一種獎懲措施是所謂的 “怠惰懲罰”。基本上,如果距上一次敲定區塊已過去了 4 個時段(還沒有新檢查點得到敲定),所有驗證者都會遭受怠惰懲罰,而且懲罰力度會呈平方級上升,直至新的檢查點得到敲定。怠惰懲罰保證了:即使 50% 的驗證者都離線了,系統也會在 21 天后重新開始敲定區塊。
罰沒條件主要有三個,分別是:雙重提議、FFG 雙重投票,FFG 環繞投票。LMD GHOST 投票是不會招致罰沒的。
雙重提議是指區塊提議者于所在時隙提議了多于一個區塊。
雙重投票是指驗證者在提交 FFG 投票時,多個投票指向同一個目標檢查點,但引用的來源檢查點卻各不相同。
環繞投票指的是驗證者在提交 FFG 投票時,多個投票所指向的檢查點 恰成環繞形狀。舉個例子,假定一位驗證者在時段 5 投票時,以時隙 32 的區塊為來源檢查點,以時隙 128 的區塊為目標檢查點:
如果該驗證者在時段 6 的投票以時隙 64 的區塊為來源檢查點,以時隙 96 的區塊為目標檢查點,那么該票就被 TA 自己在時段 5 的投票給包圍(環繞)起來了。
如果該驗證者在時段 6 的投票以時隙 0 的區塊為來源檢查點,以時隙 160 的區塊為目標檢查點,則該投票把 TA 自己在時段 5 的投票給包圍起來了。
如果這位驗證者在時段 6 又給時隙 128 的區塊投票,除非其來源檢查點仍是時隙 32 的區塊,否則就成了雙重投票,也會被罰沒。相同的 FFG 投票倒是不會被罰沒的。
擁有相同來源檢查點的 FFG 投票也不會招致罰沒。這是維持網絡活性的重要條件。舉個例子,如果兩條分叉鏈各自都有 50% 的驗證者余額支持,協議應該鼓勵驗證者通過投票給相同來源檢查點、不同目標檢查點,在分叉間切換(而不是懲罰他們切換分叉,這樣會導致網絡繼續分裂)。能夠安全地在分叉間切換,驗證者們就能打破僵局,嘗試形成 2/3 的多數。
檢舉他人的驗證者需要在見證消息中納入相互沖突的投票,以證明另一個驗證者應該受到懲罰。要高效地從一長段歷史中找出相互沖突的投票,在算法和數據結構上也是一種挑戰。因此,開放工程挑戰·罰沒探測器也在尋找貢獻者。
得到良好控制的驗證者一般是可以避免被罰沒的:只需記得自己曾經簽名過哪些見證消息就好。誠實的驗證者也不會因為其它驗證者的行為而受到波及。只要驗證者不簽名相互沖突的見證消息,不作出雙重提議,就不會被罰沒。
為得到更好的運行體驗、更值得信任的信息來源,乃至更好的 DoS 保護,驗證者客戶端可能會同時使用多個信標鏈節點。在這種模式中,包括使用備份的驗證者客戶端的時候,需要小心不要讓驗證者簽署相互沖突的消息。
每一個想成為驗證者的用戶都要先有 32 ETH 才能獲得驗證者資格。用戶質押 32 ETH 到以太坊主網上的保證金合約中,就能獲得一個驗證者資格。
另一方面,信標鏈也會勸退(反激活)所有余額降低到 16ETH 的驗證者;質押用戶可以取出剩余的驗證者余額,不過在 Eth2 Phase 0 還做不到。
驗證者在服務 2048 個時段(約 9 天)之后也可以主動退出。退出時要先走完 4 個時段,質押用戶才能取出自己的權益。在這 4 個時段內,該驗證者的余額仍然是可以被罰沒的。因此,誠實驗證者的余額可以在約 27 小時之后取出。但是,如果驗證者在此時被罰沒,就只有再等 8192 個時段(約 36 天)之后才能取出剩余款項。
更多技術細節可看《以太坊 2.0 Phase 0 驗證者生命周期》。下圖亦來自這份資料:
為避免驗證者集合在短時間內出現大規模的變動,單個時段內能激活和退出的驗證者數量是有一個機制限制的。這樣可以讓激活許多驗證者、快速攻擊系統的攻擊更難發動。
信標鏈還使用了一個叫做 “有效余額” 的概念,這個有效余額回避驗證者余額的變化更小,使得技術上的最優化成為可能。
在每一個時段,驗證者都被均勻分配到不同時隙中,并進一步劃分成相同規模的委員會。驗證者只有 1 個應召的時隙,也只會存在于 1 個委員會中。因此:
一個時段中的所有驗證者,通過集體決策嘗試敲定某個檢查點;方法是 FFG 投票;
各時隙中的所有驗證者,通過集體決策嘗試選出信標鏈的頂端區塊:方法是 LMD GHOST 投票;
一個委員會中的所有驗證者,通過集體投票嘗試將某個分片交聯到信標鏈上。
最符合協議的行為可以得到最多的獎勵。
信標鏈的啟動(創世塊)需要至少 16484 名驗證者。驗證者的數量會因為罰沒及資源退出而減少,也會因為質押用戶的投入增加而增加。而且,隨著 Eth2 Pahse 1 及后續階段的升級,預計會有更多驗證者參與進來。信標鏈需要至少 262144 名驗證者(質押的 ETH 數量超過 800 萬)才能使得單個信標鏈區塊能包含 64 個交聯。
我們還從未擁有過一個 去中心化 系統和應用的可擴展平臺。如果你想更深入地研究以太坊 2.0,權威的參考來源是 Ethereum 2.0 Specifications。該技術規范包含了信標鏈技術規范,還提供了其它關鍵信息源,而且提交 issue 可以獲得獎金。當前,最緊迫的 工程需要是點對點網絡的組網功能。
自己動手,或者推薦朋友參加挑戰、參與 ethresear.ch 論壇或者 Ethereum Magician 論壇,創造歷史吧!
(完)(文內有許多超鏈接,可點擊左下 ”閱讀原文“ 從 EthFans 網站上獲取)原文鏈接:https://ethos.dev/beacon-chain/作者: ethos.dev翻譯: 阿劍你可能還喜歡:
前期價格觸及10500美元開始回落,并一路下探至接近120日線附近,成交量逐步衰減,下跌動能放緩,今日迎來反彈,價格再次站回至5日線上方,同時站上6433美元啟動的上漲第一階段趨勢線上方.
1900/1/1 0:00:00國家外匯管理局科技司司長兼外匯業務數據監測中心主任? 張鐵成近年來,國家外匯管理局(以下簡稱外匯局)高度重視金融科技的創新與應用,大力推進“數字外管”和“安全外管”建設.
1900/1/1 0:00:003月18日,為了進一步提升供應鏈金融的開展效率,騰訊云正式發布供應鏈金融智慧服務平臺,將大數據、云計算、人工智能、物聯網、區塊鏈等金融科技能力.
1900/1/1 0:00:00當中本聰敲下第一行代碼的時候,他或許并不會想到會對后世產生這么大的影響。因為直到現在人們依然沒有理順數字貨幣和區塊鏈之間的關系.
1900/1/1 0:00:00(喝酒者,梵高)ETH2.0的Phase 0階段計劃于2020年夏天推出,Phase 0以信標鏈為主,以太坊用戶可以將32個ETH代幣存入當前ETH1.0網絡上的質押存儲合約.
1900/1/1 0:00:00與“黑色星期一”共同而來的技術性熊市正在影響各資本市場。周一, 歐洲主要股指全線收跌,法國CAC40指數收跌超8%,德國DAX30、英國富時100跌約7.5%.
1900/1/1 0:00:00