Vitalik 最新觀點:如何為多簽錢包和社交恢復錢包選擇守護者?
原文標題 : How I think about choosing guardians for sig and social recovery wallets原文作者 :Vitalik Buterin 編譯 : 倩雯 , C hainCatcher
多重簽名錢包(如Gnosis Safe)是一種簡單安全的資金存儲方式,讓你可以享受到自托管的大部分好處------當表面看起來值得信賴的中心化實體變得不可信賴時,你的資金也不會不翼而飛。但同時你又不需承擔對整個安全設置進行負責的風險。我個人使用多簽錢包來存儲我的大部分資金,以太坊基金會也是如此。
另外一個類似多重簽名錢包的是社交恢復錢包------單一的密鑰可用於簽署交易,但如果該密鑰丟失,可使用其他人持有的一組密鑰來恢復資金。社交恢復錢包比多簽錢包更容易使用,特別是ERC-4337賬戶抽象興起,靈魂錢包( Soul Wallet)即將問世,將使該技術變得更加人性化。一旦社會恢復錢包變 發展得 足夠成熟,我的建議是將社會恢復 熱錢包 , 儲存個人或組織的一小部分資金 ; 將 多簽 用於 冷錢包 , 儲存個人或組織的儲蓄 。
多重簽名錢包和社交恢復錢包都依賴於"守護者"(guardian)的概念:一組N個地址,通常由其他人持有,其中任何M個地址可以批准一個操作(例如,可以設置N=6和M=4)。在多簽名錢包的情況下,每筆交易必須由N個守護者中的M個人簽字。在社交恢復錢包的情況下,單一的密鑰可以簽署交易,但如果該密鑰丟失,N個守護者中的M個人必須簽署信息來重置密鑰。
安全使用多簽名錢包和社交恢復錢包的兩個關鍵問題是 : (i) 你選擇誰作為 守護者 ,以及(ii) 你給他們什麼指示?這篇文章將概述我是如何思考這個問題的,其中大部分觀點應該也同樣適用於被用於保障個人和組織資金的多簽和社交恢復錢包。
我們想從 守護者 那裡得到什麼?
- 最大限度地降低其丟失密鑰的概率。
- 最大限度地降低其串通起來偷走你的資金或被脅迫這樣做的概率。
- 在上述兩種風險已不可避免的情況下,每個守護者的風險應是最大限度不相關的------你想盡量減少其的共同點,因為這種共同風險可能會導致風險,使你的許多守護者同時失去能力或受到影響。
這個問題的答案很簡單,但它指導了我在守護者方面的所有選擇:
守護者可以 是你自己的設備,但不 要讓過多的設備成為你的守護者 。
首先至少有一個守護者會是你自己設備上的錢包,這是很正常的,畢竟這是你自己的資金,不存在會影響去中心化的道理。然而,一旦你擁有一個以上受自己控制的守護者,你就會面臨一個棘手的難題:你對他人的信任降低,也將更多的權力集中在自己身上,如果你被黑客攻擊、被脅迫、喪失能力或死亡,這可能會產生風險。
我的經驗是,應該有足夠的 守護者 受到 他人控制 。 如果你消失了,還有其他足夠的守護者可以收回你的資金。也就是說,你應該至少控制一名 守護者 ,最多控制N-M名 守護者 。另外,每個守護者應該在一個單獨的設備上(筆記本電腦、手機、舊手機等)。
選擇不經常交談的 守護者 ,或者最好是不認識的 守護者。
理想情況下,守護者應該不知道對方是誰。這大大降低了他們合謀的風險,此外,他們也沒有充分的理由去了解對方。如果你發生了什麼事,他們仍然能夠找到對方,因為在這種情況下,人們自然會想到一些明顯的標準流程(例如,聯繫你的家人)。
另外,你要盡可能地減少 守護者 之間的關聯性:不要選擇兩個住在同一個城市(甚至最好是同一個國家的)守護者,或者兩個使用同一類型錢包的守護者,並在不同的操作系統之間進行平衡。
守護者 在批准一項操作前 應先提出一個密保 問題 :
當你要求守護者為你批准一項操作(在多簽中,指的是交易;在社會恢復錢包中,指的是重設你的賬戶密鑰),他們不應該立馬開始操作。這對安全來說是一場災難:如果有人黑進你的聊天賬戶,他們可以掃描你的信息,找出你的守護者是誰,聯繫他們每個人並要求他們確認,從而盜走你的資金。
為避免這種情況,我首選的 流程 是指示 守護者 提出 密保 問題。當你要求確認你的操作時,守護者應該問你一些只有你們兩個人和極少數人知道的事情(例如,"我們上次見面時,我們吃了什麼食物?"),只有在你給出正確答案時才確認操作。
一個很自然的選擇是語音或視頻通話,但在人工智能已擅長於造假的時代,這種方式不再那麼可信,所以你可能想把語音/視頻通話與詢問某種密保問題結合起來。
如果你 是"Degen老手" ,確保 你的 守護者 能夠快速反應。 否則 , 你不必提出這種要求 。
如果你用鏈上合同從事的事情風險較高,你可能需要快速行動:如果合同有漏洞,就把資金抽出來。如果你馬上要被清算,就把錢轉移出去,等等。如果 你有這些需求 ,那麼你要找到能在短時間內迅速行動的 守護者 (因此也要找到不同比時區的 守護者 ,以便有足夠的 守護者 在任何時候都能完成交易)來保護你的資金。然而,如果你不做這類事情,那麼速度就不是特別重要,事實上甚至可能是有些有害的,因為說服人們緊急行動是黑客常用的社會工程策略,如果人們厭惡這種精神,那可能反而是一種好事。
每年至少對每個 守護者 進行一次測試
每年至少做一次測試操作。理想情況下,每年做兩次測試操作,一次使用一半的守護者,另一次使用另一半的守護者。這可以確保你的守護者沒有忘記或丟失他們的賬戶。
更進階的問題: 隱私
守護者的挑戰之一是,目前還沒有技術可以使你的財務隱私不受守護者的影響。然而,這是一個可以從技術上解決的技術問題: 守護者 不是直接守護你的賬戶,而是守護一個 " 保險箱 " 合同,你的賬戶和 保險箱 之間的鏈接被隱藏起來。
在需要恢復之前,使鏈接保持隱藏是非常容易的:例如,你的賬戶可以有一個守護者CREATE2合同,只有保險箱可以創建。不過,若想要鏈接在恢復後保持隱藏狀態,需要更先進的ZK-SNARK技術。我預計這個問題將在未來幾年內慢慢得到解決。