比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads

兼顧安全性和可訪問性 保護驗證者密鑰有幾種方法?_ETH2

Author:

Time:1900/1/1 0:00:00

上一篇文章討論了如何保護ETH2.0的取款密鑰,并總的介紹了ETH2.0驗證者所使用的幾個密鑰對。在閱讀本文之前,建議先閱讀一下這篇文章。同樣地,我們預設讀者對驗證者有最基本的了解,包括但不限于“驗證者是什么”,“他們為什么需要密鑰”,以及“他們通常需要什么操作”等概念。

什么是驗證者密鑰?

在ETH2.0中,驗證者密鑰被用來確定相關消息是哪位驗證者發出的。驗證者要發送這些消息才能獲得獎勵。

驗證者密鑰的風險很難衡量:驗證者密鑰本身無法用來訪問資產。因此,即使攻擊者獲得了你的驗證者密鑰,也無法直接盜取資產。但是,他們可以通過敲詐勒索?1?等方式間接獲利,更有甚者,比起自己獲利,他們更想讓你蒙受損失?2?。因此,我們通常認為驗證者密鑰的安全需求很高。

-圖1:驗證者的安全需求-

但是,不像取款密鑰那樣,驗證者密鑰要能夠隨取隨用,因為驗證者在每個epoch都要簽署多個消息。因此,驗證者密鑰的訪問需求也很高。

-圖2:驗證者密鑰的訪問需求-

因此,我們發現自己陷入了兩難困境:從傳統上來說,同時滿足安全性和可訪問性需求是很難實現的,因為提高安全性往往會降低可訪問性,反之亦然。

-圖3:驗證者密鑰的雙重需求-

為滿足對安全性和可訪問性的雙重需求,我們需要采取更高級的措施,在不作重大妥協的前提下,較高程度地滿足這兩方面的需求。這可以通過分層來實現。本文的目的是探究每一層所提供的功能,并了解哪些功能適用于或不適用于驗證者設置。

Eth2中的密鑰對都有一把公鑰和一把私鑰。出于本文的寫作目的,全篇所用的“key”一詞指代的都是通常叫做私鑰的那把;如果指代的是公鑰,會有明確的說明。

硬件錢包Trezor通過Wasabi Wallet提供隱私交易功能:金色財經報道,加密貨幣硬件錢包 Trezor 通過 Wasabi Wallet 提供隱私交易功能CoinJoin,該功能于 2022 年推出,允許多個用戶將他們的比特幣輸入集中到一個交易中,并接收相同數量的比特幣輸出但地址不同,從而對比特幣交易進行混合。[2023/4/19 14:14:20]

目標和分層

首先,我們需要定義攻擊者和用戶的目標。在知道為什么要保護驗證者密鑰之后,我們就可以思考每個功能可以在多大程度上實現這一目標。首先,攻擊者的目標可以被定義成:

攻擊者的目標是,簽署某一條消息時能簽出與目標驗證者公鑰相對應的簽名。

當然了,如果這是唯一的目標,那么直接毀掉驗證者密鑰就能阻止攻擊者了。但是,這對用戶來說一點幫助也沒有。因此,我們需要考慮的第二個目標,也就是用戶的目標,可以被定義成:

用戶的目標是只簽署理想消息,不簽署不良消息。

就本文的目標而言,理想消息指的是能夠獲得獎勵的消息,不良消息指的是會觸發?罰沒事件?3?的消息。

請注意,攻擊者要想實現其目標,只需要簽署任意一條消息即可,而用戶的目標是持續性的。這種不對稱性是安全系統的一大特征,即,攻擊者只需贏一次就夠了,而用戶需要每次都贏。

為此,我們需要一個由不同分層或者說獨立功能組成的系統,提供增強型安全性或增強型可訪問性,而且可以將二者結合起來,共同達到較高水平。一個良好的安全模型需要具備多個分層,每個分層都會提供某種保障或其它分層的備份,并且有足夠多的分層提供可訪問性,從而確保用戶的目標可以實現。請注意,本文聚焦于技術保護:其它層面上的安全性都不屬于本文的討論范圍內,雖然它們在任何安全模型中都是至關重要的部分,應該采取相應解決方案。

孫宇晨否認彭博社有關 Huobi 正在尋求股權買家的報道:金色財經報道,孫宇晨發推特否認彭博社有關 Huobi 正在尋求股權買家的報道。此前彭博社援引知情人士報道,孫宇晨已經就出售 Huobi Global 的股份進行了談判。孫宇晨在過去幾周試探了潛在投資者的意見。這些對話還處于早期階段,尚不清楚是否有投資者會繼續推進。[2023/4/1 13:39:35]

分層

為了探討驗證者密鑰的保護方式,我們先來做個簡單的演示:

-圖4:驗證者密鑰-

與ETH2.0的所有密鑰一樣,驗證者密鑰也是一串數字?4?。如果驗證者在不采取任何保護措施的情況下存儲了驗證者密鑰,攻擊者很容易就能獲得該密鑰并實現其目標。以下幾類人能夠獲得驗證者密鑰:

任何有權訪問運行驗證者客戶端的計算機賬號的人

任何被授權訪問運行驗證者客戶端的計算機的人

任何可以物理訪問運行驗證者客戶端的計算機的人

任何有權訪問運行驗證者客戶端的計算機的數據的人

這樣一來,用戶就無法實現其目標。因此,我們首先要通過加密的方式來保護驗證者密鑰:

-圖5:加密驗證者密鑰-

我們可以通過多種方式加密驗證者密鑰,例如,?EIP-2335?標準?5?。一旦驗證者密鑰被加密,除非攻擊者掌握加密口令,否則無法解密出密鑰?6?。這樣就可以很好地保護驗證者密鑰。

乍看之下,攻擊者似乎無法通過任何方式來實現其目標。然而,用戶也沒有辦法實現其目標,因為他們再也無法簽署理想消息:無論是對于用戶還是攻擊者來說,經過加密的密鑰都是沒用的,因為用戶必須先將該密鑰解密,然后才能用它來簽署消息。這樣一來,驗證者進程就一定要包含訪問解密口令這一步驟。即然驗證者進程可以訪問解密口令,那么攻擊者也可以訪問該口令,尤其是在解密口令被存儲在驗證者客戶端的情況下,因為驗證者客戶端有可能遭到攻擊。

zkSync生態Token出現普漲行情,ZZ(ZigZag)24小時漲幅18.8%:3月24日消息,據CoinGecko行情顯示,zkSync生態Token出現普漲行情,其中:ZZ(ZigZag)現報0.613美元,24小時漲幅18.8%;FRIN(Fringe Finance)現報0.005美元,24小時漲幅14.4%;MUTE(Mute)現報1.65美元,24小時漲幅16.5%;SPACE(SpaceFi)現報0.187美元,24小時漲幅102.6%。行情波動較大,請做好風險控制。

此前報道,今日凌晨起,包括MathWallet、SpaceFi、Argent、Across、zkRock在內的眾多zkSync生態項目以及zkSync官方賬號均發布帶有“03.24.23”字樣與zkSync“?”圖案的短視頻,據社群猜測,zkSync或將于今日公布空投及主網相關事宜。[2023/3/24 13:24:06]

因此,這種改變本身不算上策。不過,如果我們將它與第二層結合起來,就能提供更有力的保護:

-圖6:遠程口令-

如果解密口令是遠程存儲的,加密驗證者密鑰會帶來更強大的保護?7?。由于口令不再存儲于驗證者客戶端內,攻擊者無法從磁盤數據中獲得未加密的私鑰。攻擊者只能發動更加復雜的攻擊,例如,從內存中獲取解密后的密鑰,或模仿驗證者客戶端進程來獲得解密密鑰。

雖然攻擊難度更大了,但是復雜攻擊依然有可能獲得驗證者密鑰。此外,用戶依然可能在不經意間簽署不良消息。因此,我們可以通過增加一個遠程簽名器層來為用戶提高安全性和可訪問性。

-圖7:遠程簽名器-

遠程簽名器分離了驗證者客戶端的核心功能:確定要放到消息中的數據、簽署消息并將該消息發送至ETH2.0網絡。第一個和第三個功能仍保留在驗證者客戶端手中,第二個功能由遠程簽名器來實現。遠程簽名器還引入了?罰沒保護機制?,可以確定哪些是理想消息,哪些是不良消息,并予以簽署或拒絕。

SEC主席:新規將令加密貨幣經紀商的監管指令執行力得到完美提升:金色財經報道,美國證券交易委員會(SEC)主席Gary Gensler表示,對股票交易規則的修改,將有助于促進競爭,提升交易透明度;基于訂單流的付費會在交易過程中帶來沖突,無法平衡經紀商與投資者的利益;新規將令加密貨幣經紀商的監管指令執行力得到完美提升;SEC服務的對象是美國全體公眾;SEC的每一項提議中都包含了對經濟狀況的透徹分析;所謂的“零傭金”并不代表真的是零交易成本。[2023/3/4 12:42:00]

如何阻止攻擊者將攻擊目標從驗證者客戶端轉移到遠程簽名器呢?首先,簽名器可以具備比驗證者客戶端更高的安全性。驗證者客戶端需要執行許多任務,包括與ETH2.0網絡的其它組成部分通信。這些通信可以為攻擊者提供信息和攻擊界面。由于簽名器只與驗證者客戶端通信,它們的活動受到很多限制,這就為雙方的服務器帶來了更高的安全性。

其次,遠程簽名器為用戶帶來了其它好處。現在,同一個遠程簽名器可以與多個驗證者客戶端通信,使得我們能夠創建具備高可用性的驗證者客戶端基礎設施。遠程簽名器確保驗證者客戶端不會簽署任何不良消息。

然而,事實上,遠程簽名器存在單點故障問題:如果遠程簽名器遭到攻擊,或出現故障,用戶就連理想消息也簽名不了。有沒有一種方法可以讓遠程簽名器更能抵抗攻擊,同時又不會失去上述任一好處?

-圖8:門限簽名-

我們還可以在上述層次的基礎上再構建一層門限簽名,進一步增強安全性和可訪問性。驗證者密鑰需要用Shamir密鑰分割流程來處理,即,使用驗證者私鑰生成多個密鑰,然后將它們發送給遠程簽名器。

-圖9:Shamir密鑰分割-

現在,每個遠程簽名器都持有由驗證者私鑰生成的密鑰了,而且只需幾個遠程簽名器就可以創建有效簽名,也就是所謂的?門限簽名?。假設有3個遠程簽名器,其中2個遠程簽名器提供個人簽名來生成一個聚合簽名,如下圖所示:

Web3社交應用Towns完成2550萬美元A輪融資:金色財經報道,Web3 社交應用 Towns 完成了 2550 萬美元的A輪融,該輪融資由 A16z crypto 領投。該公司表示,該協議基于以太坊,并使用可編程智能合約來控制每個城鎮廣場內的管理、隱私和角色。社區可以在協議之上構建新的客戶端和 API,并將負責編寫自己的審核和貨幣化規則。[2023/2/23 12:25:46]

-圖10:生成聚合簽名-

門限簽名的表達式通常寫成m/n,也就是說,假設總共有n個簽名,需要任意m個簽名來生成一個有效簽名。如果門限值是2/3,那么使用任意兩個簽名即可生成一個有效簽名。

引入門限簽名之后,即使有一個服務器?8?出故障,用戶也能簽署理想消息,而且也不會增加用戶無意間簽署不良消息的概率。鑒于硬件、軟件和操作失敗的可能性不可消除,門限簽名確實是一個具有抗逆性的驗證基礎設施應有的功能。

雖然門限簽名機制會帶來額外的安全性,但是它有兩大缺點。第一,分發密鑰并不能預防長期攻擊:假設門限值是2/3,如果有一個簽名器反水,整個機制就會留下永久的漏洞,只要再有一個簽名器反水,攻擊者就可以達成目標。第二,攻擊者有可能在密鑰分發過程開始前搶先獲得該密鑰,從而導致整個機制喪失意義。分布式密鑰生成可以一舉解決這兩個問題:

-圖11:分布式密鑰生成-

分布式密鑰生成是一個比較復雜的話題。具體的運作方式不在本文的討論范圍內。但是,我們會提供一個簡短的功能說明,來闡述它是如何克服簡單門限簽名的局限性的。

在分布式密鑰生成開始前,用戶先要決定門限值,例如2/3。他們可以選擇3個遠程簽名器,并啟動生成過程。這3個遠程簽名器會通過密鑰管理器?9?生成自己的密鑰,不與用戶或其他任何一個簽名器共享,以及一些公共信息。將來自3個簽名器的公共信息結合起來就能創建出一個合成公鑰。

-圖12:創建合成公鑰-

只需3個簽名器中的任意2個即可生成簽名,類似簡單的門限簽名。

-圖13:一組簽名器簽署消息-

如果有一個簽名器不可用,例如,下線維護或遭到攻擊,還可以通過另外兩個簽名器生成簽名。

-圖14:另一組簽名器簽署消息-

可以看出,分布式密鑰生成與簡單的門限簽名具備相同的優勢,可以避免最開始需要分發密鑰的風險。但是,一個簽名器被攻陷就會留下永久漏洞的問題仍然存在。那分布式密鑰生成還有其它招數嗎?

有的,就是“密鑰更新”。密鑰更新就是毀掉現有密鑰,由每個簽名器重新生成新的密鑰。新生成的密鑰保留原有密鑰的特性,即,任意兩個密鑰可以結合起來生成一個有效簽名。新的密鑰與原有密鑰不具有相關性,因此無法通過原有密鑰計算出新的密鑰。

-圖15:密鑰更新-

如果有一個簽名器遭到攻擊,其它簽名器可以觸發密鑰更新。新舊密鑰無法結合起來生成一個有效簽名。這樣一來,被攻擊者盜走的密鑰就會變得毫無用處。

-圖16:攻擊失敗-

密鑰更新可以多次執行,以防多個簽名器遭到攻擊。

其它需要考慮的要點

安全性是一個大概念。上文闡述了不同安全層的功能和優點,并沒有提出任何完美甚至最佳解決方案。就保護驗證者密鑰而言,我們還需考慮很多要點,例如:

硬件錢包

支持BLS12-381的硬件錢包預計很快就會上線。硬件錢包可以替代下層所使用的簡單磁盤存儲系統。但是這樣一來,我們可能無法引入分布式密鑰生成之類的高級技術。

成本效益

凡是涉及安全性的方案都有可能為了提高一點安全性而花費大量資金。每個用戶都需要決定自己想要防范的攻擊,及其愿意為此付出的代價。

遠程存儲驗證者密鑰

上文已經討論過了遠程口令存儲。但是,遠程存儲驗證者密鑰是否還會帶來其它優勢?雖然它不會增強安全性,但是在出現硬件故障的情況下,它可以讓驗證者客戶端更快恢復,這點對于用戶來說非常有利。但是,遠程存儲也會帶來額外的風險,因為我們必需正確配置遠程存儲,確保只有那些獲得許可的人能夠訪問密鑰。

備份驗證者密鑰

雖然本文聚焦于如何保護驗證者密鑰不受攻擊,但是實際上大多數驗證者密鑰丟失事件背后的原因都平平無奇。最常見的就是存儲密鑰的硬件丟失。用戶需要一個備份策略,而且他們需要知道的是,一旦攻擊者獲得了被備份的密鑰,ta就能對任意消息簽出與驗證者公鑰相對應的簽名。我們應該采取適當的措施來確保攻擊者無法訪問已備份的驗證者密鑰。在理想情況下,這些密鑰最好完全脫機存儲,而且外人無法接觸其存儲設備。

多個驗證者密鑰

如果有多個驗證者密鑰,它們之間,或者與它們各自的取款密鑰之間是否應該具備什么關系?例如,將多個驗證者密鑰備份成一個種子,這樣確實使用起來比較方便,但是不會帶來安全效益。用戶應該考慮是否想在任意階段單獨控制驗證者密鑰,再進行相應的計劃。

結論

本文提供了多種方法來保護驗證者密鑰,同時確保它們可以用來履行驗證職責。

每個用戶都應該考慮他們想要提供的安全級別,以及他們應該采取的措施。應當考慮的是,驗證者密鑰不控制資金,因此竊取驗證者密鑰的攻擊者無法直接獲得任何利益?10?。

本文單純從技術層面上探究了如何保護驗證者密鑰。我們還應該考慮運營和社會安全需求。若想全面保護驗證者密鑰,就得考慮到所有這些方面。

或者,你可以使用提供這類功能的質押服務。在綜合考慮技術、風險和資金管理的情況下,Attestant正在構建硬件、軟件和操作服務,以提供機構級的質押服務,讓你可以隨時控制自己的資金。

腳注

“交出贖金,否則就讓你遭到罰沒。”

通過“金手指攻擊”或者將適當規模的攻擊與ETH衍生品相結合,這可能會對攻擊者的財富產生間接影響。

罰沒事件指的是,如果有驗證者對ETH2.0網絡造成傷害,就會損失很大一部分質押物。

其范圍在1和52,435,875,175,126,190,479,447,740,508,185,965,837,690,552,500,527,637,822,603,658,699,938,581,184,512之間。

至文本截稿時,EIP-2335標準仍處于起草階段,不過已經有很多ETH2.0密鑰生成器在使用該標準。

我們假設口令足夠強大,無法暴力破解。

這個例子很好地體現了,如何將兩個層次結合起來提供更高的安全性。

其它門限簽名的變體可以提高冗余性。

我們使用密鑰管理器一詞來指代那些除簽名之外還要執行更多操作的遠程服務器。

還應該注意的是,潛在攻擊者并不一定知道這一事實。

原文鏈接:

https://www.attestant.io/posts/protecting-validator-keys/

作者:?JimMcDonald

翻譯&校對:?閔敏&?阿劍

Tags:ETHETH2ETH2.0zkSyncTruthGPT (ETH)sETH2eth2.0幣種zksync幣合法嗎

比特幣行情
姚前談區塊鏈:基于現實環境 聯盟鏈或是應用落地的較優選擇_區塊鏈

8月6日,證監會科技監管局局長姚前、螞蟻集團董事長井賢棟做客由螞蟻鏈、羅漢堂和新浪財經聯合主辦的對話訪談節目《尋找區塊鏈力量》.

1900/1/1 0:00:00
Plus Token案 沒那么簡單?_PLUS

PlusToken案主犯尚在瓦努阿圖時,就有嫌疑人家屬聯絡希望在這個太平洋小島尋找靠譜的代理律師。他們回國后,又有其他家屬來咨詢過本案.

1900/1/1 0:00:00
幣海引路人:登高后回落 是多頭蓄力 還是空頭發力狙擊_SDC

幣海引路人:登高后回落是多頭蓄力還是空頭發力狙擊市場需要敬畏,投資不是賭博,不要拿五五開的概率說話,看清趨勢,抓住節點,輕松獲利。只要你在,只要行情在,我們就在.

1900/1/1 0:00:00
[持幣者]8月7日比特幣行情分析 猶記得前幾天暴跌在眼前_比特幣

:最近,有人問持幣者行情有望回到12000一線嗎?我對此是沒有回答的,不是達不到,也不是達的到.

1900/1/1 0:00:00
黃金站上2000美元,現在是數字黃金登上2萬美元的時候了嗎?_比特幣

比特幣短期價格走勢預測 ——實際價格線——預測價格線摩根大通透露,老一代正在購買黃金,預計金價將達到3000美元,而年輕一代則熱衷于比特幣.

1900/1/1 0:00:00
價格跌了 幣也莫名變少?為什么錢包里的AMPL數量每天都在變?_MPL

上周,礦礦在微博上分享了“虧了又虧,虧上加虧”是什么樣的體驗,講述用ETH兌換時下非常熱門的DeFi代幣AMPL后,遇上ETH上漲、AMPL價格腰斬并數量通縮的“戴維斯三殺”故事.

1900/1/1 0:00:00
ads