科普 | 關於驗證者的常見問題

買賣虛擬貨幣
編者注:本文來自 Eth2 驗證者快速啟動器的 “Validator FAQ” 頁面,集中列舉和回答了跟參與驗證活動有關的問題。快速啟動器頁面另有一個 “參與須知” 頁面,亦提醒了參與驗證活動有關的風險,可相互參照。但內容重合度高,在此不錄。快速啟動器的多語言支援還在實現中,相信不久後就會跟大家見面。簡介1. 到底什麼是 “驗證者(validator)”?驗證者是參與 ETH 2.0 協議共識機制的實體。用大白話來說,就是持續執行特定的一段計算機程式的人。這個程式會提議並證明新的區塊,使之能新增到區塊鏈上。換言之,你可以將驗證者看作新區塊的投票者。一個區塊獲得的票數越多,被新增到區塊鏈上的可能性就越大。
重要的是,驗證者的投票權重由其權益數量(the amount it has at stake)決定。2. 保證金合約(deposit contract)是什麼?你可以將保證金合約理解為以太坊賬戶和 ETH 2.0 驗證者之間的資金轉移通道。保證金合約的狀態指明瞭誰儲存了保證金、由誰來參與驗證、保證金數量有多少,以及誰能取出這些資金。3. 為什麼驗證者需要先存入保證金?系統需要扣押驗證者的資金,以便在某個驗證者被證明行為不軌之時對其進行懲罰。
換句話來說,為保證這些驗證者都遵守協議,要讓這些驗證者的行為都會產生經濟後果。4. 驗證者需要質押多少 ETH ?在驗證者可以開始保護網路之前,ta 需要質押 32 ETH 。這 32 ETH 就是驗證者的初始餘額。5. 質押量超過 32 ETH 有什麼好處嗎?沒有。單個驗證者存入超過 32 ETH 不會獲得任何優勢。將有效質押量設定在 32 ETH 有助於推動權力的去中心化,因為這樣可以防止某個驗證者的投票權重過大。
請記住,驗證者的投票權重取決於其權益數量。(譯者注:實際上,驗證者的投票權重取決於其 “有效餘額(effect balance)”。有效餘額並不是賬戶的表面餘額,有效餘額有個上限是 “32”,假設一個驗證者一直勤勤懇懇地賺錢,其有效餘額也不會超過 “32”,同理,其被罰沒時,也不會一次性被罰沒超過 32 ETH。原文此處用語是 “the amount it has at stake”,雖然也嫌太模糊,但顯然不能直譯成 “驗證者已存入的數額”。漢語中缺乏與 “at stake” 對應又不顯累贅的說法,故此處譯為 “權益數量”,實屬無可奈何)驗證者職責1. 經濟激勵機制是如何幫助使用者保持活躍和誠實的?除了會因為離線而遭受懲罰之外,驗證者還會因為作惡而遭受懲罰 —— 例如,投票給無效或有衝突的區塊。另一方面,如果驗證者 所提議/所見證 的區塊被新增到了區塊鏈上,驗證者就會獲得獎勵。
基本概念是:· 幫助網路達成共識的行為會獲得獎勵· 妨礙共識的無意行為(或不作為)會招致輕微懲罰· 惡意行為會招致嚴重懲罰(或稱罰沒)換言之,驗證者在努力獲得獎勵的同時也在為整個網路做貢獻。2. 獎勵/懲罰 是如何發放的?
請記住,每個驗證者都有自己的餘額 —— 初始餘額則可在保證金合約中看到。以太坊網路規則會基於驗證者的履職情況定期更新其餘額。換言之,驗證者所獲得的獎懲都會在餘額中反映出來。3. 獎勵/懲罰 多久發放?大約每 6.5 分鐘(即,一個 epoch )發放一次。每個 epoch 期間,網路都會評估每個驗證者的表現,並相應給予獎勵或懲罰。4. 獎勵/懲罰 金額有多大?
這個問題很難回答,因為在計算時需要考慮很多因素。驗證交易所獲得的獎勵主要受網路總權益量(即,驗證者總數)的影響。根據總權益量,驗證者的最高年化收益率可能在 2% 至 20% 之間。在驗證者總數固定的情況下,獎勵/懲罰主要取決於驗證者的餘額規模 —— 如果提供證明的驗證者的餘額越高,ta 所受到的獎勵/懲罰就越高;餘額越低,獎勵/懲罰就越低。請注意,這種動態機制是以不那麼明顯的方式運作的。要想了解其具體原理,你先要理解有效餘額(effective balance)這個概念。如果你對這個概念還不熟悉,我們建議你閱讀這篇文章(編者注:見文末超連結)。5. 為什麼獎勵取決於網路中的驗證者總數?區塊獎勵是根據網路中的 ETH 總權益量按比例計算的。
簡單來說,如果 ETH 總權益量很少,獎勵(利率)就很高,但是隨著權益量增加,每個驗證者所獲得的獎勵(利率)就會降低。為什麼會有這種動態調整?雖然本文不會揭開其中的真相,但是直覺告訴我們,為了確保網路良好運轉,驗證者總數不能低於某個下限(ETH 總質押量也是)。因此,為了激勵更多驗證者參與進來,利率需要維持在較高水平,直到驗證者總數達到下限為止。6. 如果離線,驗證者會遭到什麼懲罰?視情況而定。除了實際餘額的影響之外,還需要注意兩個重要情況:如果絕大多數(2/3)驗證者都線上,那麼離線所造成的懲罰較低,因為有足夠多的驗證者線上,可以實現區塊的終局性。這是預料之中的情況。如果有超過 1/3 的驗證者同時離線,離線懲罰就會較高,因為網路無法繼續實現區塊的確定性。這種屬於不太可能發生的極端情況。
請注意,如果是第二種情況,離線驗證者會在 21 天內逐漸損失高達 50%(16 ETH)的權益量。21 天之後,這批驗證者就會被逐出驗證者池。這樣一來,網路就可以恢復正常,開始達成區塊的終局性。7. 正常執行時間佔到多大比例,誠實的驗證者才能實現盈利?總的來說,只要驗證者的正常執行時間超過 50% ,就能實現盈利。這就意味著,驗證者不需要備份客戶端或冗餘的網路連線,因為離線的後果並沒有那麼嚴重。8. 作惡的驗證者會遭受什麼懲罰?同樣視情況而定。惡意行為(例如,投票給無效或有衝突的區塊)會讓驗證者遭到罰沒。
最低罰沒金額是 1 ETH ,但是如果其他驗證者在同一時間遭到罰沒,這一金額還會增加。其目的是儘可能減少驗證者因無心之失而蒙受的損失,同時抑制協同攻擊。9. 罰沒是什麼?罰沒有兩個目的:(1)大幅提高攻擊 ETH 2.0 的成本,使攻擊無利可圖;(2)透過檢查驗證者是否履行其職責來防止他們偷懶。所謂的罰沒,指的就是如果有驗證者被證明作惡,ta 的權益(中的一部分)就會被銷燬。遭到罰沒的驗證者無法繼續參與網路的共識機制,會被強制退出。(譯者注:在這幾個問題的答案中沒有顯明的資訊是:對一名驗證者來說,每一個 epoch (6.4 分鐘)就要發出一條見證訊息(attestation,包含投票內容),而且需要發出訊息的時間在一個 epoch 中的位置不是固定的。顯然,上述驗證者職責的履行不可能由人手動操作程式來執行,必定是自動化的。因此,驗證者會不會被罰沒,高度依賴於所用的客戶端軟體。因此,有意自己執行驗證者的使用者,首先要關心自己所用的客戶端效能好不好,保護措施到不到位。)
金鑰1. 如果簽名金鑰(signing key)丟了會怎麼樣?如果簽名金鑰丟失,驗證者就無法繼續提議及見證區塊。隨著時間的流逝,驗證者的餘額就會逐漸減少,因為 ta 會因為無法參與共識流程而遭到懲罰。一旦驗證者的餘額只剩下 16 ETH ,系統就會自動將 ta 逐出驗證者池。不過,這件事並非完全沒有轉機。如果驗證者的簽名金鑰是使用 EIP2334(根據預設引導流程)生成的,就可以隨時根據取款金鑰重新計算簽名金鑰。在取回保證金時,使用者也需要用到取款金鑰,而且取款時要等待大概一天才能到帳。
請注意,如果同一時間段內退出或被踢出驗證者池的人很多,延遲期可能會延長。(譯者注:在 Phase 0 階段,不會開啟驗證者取回保證金的功能。)2. 如果取款金鑰(withdrawel key)丟了會怎麼樣?如果弄丟了取款金鑰,驗證者就再也拿不回屬於自己的資金了。因此,你最好使用助記詞(mnemonics)來建立取款金鑰以便備份。如果驗證者是透過 Medalla 測試網的引導流程加入的,則取款金鑰是預設透過助記詞建立的。3. 如果取款金鑰被偷了會怎麼樣?
如果取款金鑰被盜,盜竊者可以轉走驗證者的餘額,但是必須在驗證者退出之後。如果盜竊者沒有該驗證者的簽名金鑰,就無法讓驗證者退出。驗證者可以先使用簽名金鑰退出驗證者池,然後在盜竊者之前使用取款金鑰將資金轉走。(譯者注:我認為這個回答沒有提示大家真實的風險。根據問題一的回答,如果使用者的簽名金鑰是用取款金鑰生成出來的,則偷盜了一把取款金鑰的人,是有可能計算出驗證者所用的取款金鑰的,因此驗證者的取款金鑰也將變得不再安全,儘管取款金鑰生成簽名金鑰的方法可以提高取款金鑰的安全性,但這個風險並不是不存在。應該提醒大家的是,取款金鑰始終是重中之重,一定要保護好這把金鑰。回答裡面提供的逃離方法僅在取款功能正常時才能使用,但 Phase 0 階段不會開啟取款功能,偷盜了取款金鑰的人有充分長的時間可以埋伏。)4. 為什麼不能將這兩個金鑰合二為一?一言以蔽之,為了安全。簽名金鑰必需保證隨時可用。因此,簽名金鑰需要保持線上。由於保持聯網的東西很容易遭到攻擊,讓簽名金鑰兼具取款功能是不明智的。
(譯者注:簽名金鑰是驗證者用來對見證訊息簽上數字簽名的,需要經常被客戶端呼叫以履行驗證者職責。所以說簽名金鑰是聯網的。)原文連結:https://medalla.launchpad.ethereum.org/faq作者:  Eth2 Validator Launchpad翻譯&校對 : 閔敏 & 阿劍

免責聲明:

  1. 本文版權歸原作者所有,僅代表作者本人觀點,不代表鏈報觀點或立場。
  2. 如發現文章、圖片等侵權行爲,侵權責任將由作者本人承擔。
  3. 鏈報僅提供相關項目信息,不構成任何投資建議

推荐阅读

;