header-langage
简体中文
繁體中文
English
Tiếng Việt
한국어
日本語
ภาษาไทย
Türkçe
掃碼下載APP
Partnered With:

探索Web3錢包安全問題:以太坊社群需要什麼樣的復原系統?

閱讀本文需 24 分鐘
社會恢復錢包不是一種背叛,而是「加密價值」的一種表達。
原文標題:《DAOrayaki |以太坊社群需要什麼樣的社會恢復系統》
原文作者:Vitalik,isthisanart
原文編譯: Xinyang@DAOrayaki.org, DAOrayaki


讓加密貨幣和區塊鏈應用程式對普通用戶可用的最大挑戰之一是安全性:我們如何防止用戶的資金損失或被盜?遺失和盜幣是一個嚴重的問題,經常使無辜的區塊鏈用戶損失數千美元,甚至在某些情況下浪費了他們大部分的淨資產。


多年來,人們提出了許多解決方案:紙錢包、硬體錢包和我曾經最喜歡的多重簽名錢包。事實上,它們已經導致了安全方面的顯著改善。然而,這些解決方案都有各種各樣的缺陷——有時提供的防止盜幣和丟失的額外保護遠低於實際需要,有時使用起來很麻煩,導致很少被採用,有時兩者兼而有之。


2021 年初v 神提出一個替代方案並在今年5 月份的《去中心化社會:尋找Web3 靈魂》一文中再次強調:一種更新的智慧合約錢包,被稱為「社會恢復錢包」(social recovery wallet)。與先前的選擇相比,這些錢包有可能提供高水準的安全性和更好的可用性,當以太坊生態系統大規模遷移到rollup 二層方案,可有效解決社會恢復錢包當前面臨的兩大問題: (1)依賴中心化的中繼器(relayer),(2)高交易費用。 DAOrayaki 社群對社會復原系統系列提案進行梳理並彙總成此文。這篇文章將討論什麼是社會恢復錢包、社會恢復系統的替代用例以及用戶回饋。


一、社會恢復錢包


社會恢復系統的工作原理如下:


只有一個「簽署金鑰」可用來核准交易


至少有 3 名 ( 或更多 )“監護人”,其中大多數人可以合作更改帳戶的簽名密鑰。


簽署金鑰具有新增或刪除監護人的功能,但需要經過一段時間(通常為 1-3 天)之後才可以。



在所有正常的情況下,用戶可以像普通的錢包一樣簡單地使用他們的社會恢復錢包,用他們的簽名密鑰簽署訊息,這樣簽署的每一筆交易都可以透過一次確認快速完成,就像在“傳統”錢包(如Metamask)中一樣。


如果使用者遺失了他們的簽章金鑰,這時社會復原功能就會啟動。用戶只需聯繫他們的監護人,讓他們簽署一項特殊的交易,將錢包合約中註冊的簽名公鑰更改為一個新的簽名。這很簡單:他們可以簡單地訪問一個網頁,例如 security.loopring。查看恢復請求並對其進行簽名。對每個監護人來說就像交易 Uniswap 一樣簡單。


有許多可能的選擇供您選擇誰作為監護人。三個最常見的選擇是:


- 錢包持有人自己擁有的其他設備(或紙助記詞)

- 朋友和家人

- 機構會在收到您的電話號碼或電子郵件的確認之後簽署恢復訊息,或者在重要的情況下,透過視訊電話親自核實您的身分


監護人很容易添加:你可以簡單地輸入他們的 ENS 名稱或 ETH 地址來添加監護人,儘管大多數社會恢復錢包會要求監護人在恢復網頁上簽署交易以同意添加。在任何設計合理的社會恢復錢包中,不需要下載和使用同一個錢包;他們可以簡單地使用他們現有的以太坊錢包,無論它是哪種類型的錢包。考慮到添加監護人的高度便利性,如果您夠幸運,您的社會圈子已經由以太坊用戶組成,我個人傾向於更高的監護人(理想情況下是 7 個以上)以增加安全性。


如果您已經有了一個錢包,那麼就不需要監護人不斷努力:您所做的任何恢復操作都將透過您現有的錢包來完成。如果您不認識許多其他活躍的以太坊用戶,那麼您相信在技術上有能力的少量監護人是最好的。


為了減少監護人受到攻擊和串通的風險,你的監護人不必公開:事實上,他們不需要知道彼此的身份。這可以透過兩種方式實現。首先,與其將監護人的地址直接存儲在鏈上,不如將地址列表的哈希存儲在鏈上,錢包所有者只需在恢復時發布完整的列表即可。


其次,可以要求每個監護人確定性地產生一個新的單一用途地址,他們將僅用於特定的恢復;除非實際需要恢復,否則它們不需要使用該地址實際發送任何交易。為了補充這些技術保護,建議選擇來自不同社會圈子的多元化監護人(理想情況下包括一個機構監護人);這些建議結合在一起將使監護人很難同時受到攻擊或串通一氣。


如果您死亡或永久喪失行為能力,那麼監護人可以公開宣布自己的身份,這樣他們就可以找到對方,追回您的資金。


社會恢復錢包不是一種背叛,而是「加密價值」的一種表達。


對於使用任何形式的多重簽名、社會恢復或其他形式的建議,一種常見的回應是,這種解決方案可以追溯到“信任人”的想法,也就是對區塊鏈和加密貨幣行業價值的背叛。雖然我理解人們乍看之下會這麼想的原因,但我想說的是,這種批評源自於對加密技術的基本誤解。


對我來說,加密貨幣的目標從來都不是消除對所有信任的需求。相反,加密的目的是給人們訪問加密和經濟基石,給人們更多的選擇在該信任誰,而且允許人們建立更多的約束形式的信任:賦予某人代表您的權力做一些事情而不給他們權力為所欲為。從這個角度來看,多重簽名和社會復原是這項原則的完美表達:每個參與者對接受或拒絕交易的能力都有一些影響,但沒有人可以單方面移動資金。這種更複雜的邏輯允許建立一個遠比由一個人或密鑰單方面控制資金更安全的機制。


人類的輸入應該謹慎使用,而不是完全拋棄,這一基本理念非常強大,因為它與人類大腦的優點和缺點很好地結合在一起。人類的大腦不太適合記住密碼和追蹤紙質錢包,但它是用來追蹤與他人關係的專用晶片。這種影響在非技術性用戶身上表現得更強:他們可能在錢包和密碼上更吃力,但他們同樣擅長「選擇 7 個不會合夥對付我的人」這樣的社會任務。


如果我們至少能從人類的輸入中提取一些信息,使之成為一種機制,而不使這些輸入變成攻擊和利用的媒介,那麼我們就應該弄清楚如何做到這一點。社會復原是非常強勁的:要讓一個擁有7 個監護人的錢包收到損害,這7 個監護人中的4 個將需要以某種方式相互發現並同意竊取資金,而其中的任何一個都不會給所有者帶來小費。當然,這是一個艱鉅的挑戰比攻擊純粹由一個人保護的錢包更為重要。


二、社會復原錢包的替代用例


v 神在 2021 年 1 月中的文章中透過 Argent 和 Loopring 兩個例子簡單介紹了社交恢復錢包(即智能合約錢包)的原理及特徵。並在 2021 年 7 月在 ethresear.ch 上 [1] 提出「社會恢復用例的替代機制」。我們本文重點探討:此替代機制。


Dark Crystal Web3 這個詞源自Vitalik Buterin 在2021 年發表最初帖子[2] 後的提案,它建議使用一種系統,讓恢復合作夥伴無需安裝軟體或保管任何其他數據,前提是有一個個人以太坊錢包。


Magma Collective 目前正在努力將其發展成一個 MVP(最簡可行產品)。這是一個社會恢復協議,我們為其確定了三個主要的重要功能。


該應用程式不需要恢復者記住任何東西,除了他們的以太坊主錢包的存取密碼;


該應用程式應該是保密的,這意味著它可以備份任何類型的秘密,包括但不限於以太坊私鑰;


該應用程式理想狀態下應允許秘密所有者和復原夥伴的匿名性。


由於該應用程式處理的是秘密,也許是具有高價值的秘密,驗證我們專案中的安全假設和信任要求是至關重要的。


系統由兩個部分組成:


一種基於 Web 的 dAPP,供恢復合作夥伴使用,它調用 Web3 API,以產生加密金鑰對派生的簽名,並在恢復期間從合約中檢索和解密共用。


供備份人員使用的離線優先軟體元件。給定金鑰和公鑰列表,產生一組加密共享,然後發佈到區塊鏈。作為離線拳頭,程式不進行實際發布,但產生包含加密有效負載的 dapp 連結。然後,這可以傳輸到任何具有 Web3 擴充功能的瀏覽器(例如透過二維碼)。


其運作的基本流程可以參考這裡。


三、以太坊社會需要什麼樣的社會恢復系統


建立在以太坊基礎上的社會恢復系統,重點是可用性。


作為MVP 開發初始階段的一部分,Dark Crystal Web3 對Web3 和以太坊社區的核心工具和協議進行了用戶研究,採訪了WalletConnect、3Box、Metamask、Gnosis Safe、Rainbow 和Tally 的代表,並在Twitter和Discord 上分發了一份匿名問卷。此目標不僅是考慮 Dark Crystal Web3 計畫的可用性,而且還考慮社會復原這項目前設想的重要協議,以及潛在的對工具化的需求。


- 冷儲存的作用

- 使用者的技術水平如何?

- 什麼樣的「身分」已經在鏈上使用,以及對匿名性的偏好

- 鏈上儲存與中心化儲存的角色

- 最重要的路線圖考量


冷儲存(cold storage)的作用


可用性被優先考慮,這是一個重要共識,除此之外我們最重要的發現是,冷儲存使用者場景是很罕見的。冷儲存指的是以一種永遠不會與網路連接的方式來保存鑰匙——這可能是一個紙質錢包,或者一個只與離線電腦連接的硬碟。它被廣泛認為是最安全的存放密匙的方式。然而,用冷存儲密鑰進行交易會帶來重大的可用性障礙:通常必須在離線計算機上下載和建立一個錢包程序,該程序對交易進行打包和簽名,然後將其轉移到另一個設備上並對外廣播。由於我們的應用程式是處理具有私密性,我們想知道用戶多大可能能接受這種過程?


也許有點驚訝,我們發現這種安全做法並不常見。或者更準確地說,冷存儲鑰匙和用戶將用我們的應用程式備份的鑰匙之間的重疊子集非常小。在我們所有的同步對話中,我們了解到:雖然支援冷儲存途徑很重要,但使用者不會使用它。從那些確實有冷儲存密鑰的受訪者那裡,我們了解到他們只會對價值較小的熱錢包密鑰使用我們這樣的系統。


問卷對像在某種程度上更傾向於冷儲存——33% 的人說他們會把他們的鑰匙一直放在冷儲存中。隨著研究時間的延長,我們也收到回饋說,最有安全意識的使用者傾向於擁有自己的備份系統,而不是信任我們的系統。考慮到最需要社會恢復的人往往不掌握技術:「任何能使用命令列的人都不需要社會恢復」。


使用者的技術水平如何?


事實上,我們可以要求使用者俱備什麼樣的技術素養是另一個討論的領域-什麼樣的工具、錢包等是我們的潛在使用者熟悉或需要的?


從架構上講,Dark Crystal Web3 涉及一個基於瀏覽器的託管應用程序,以及一個可以在本地提供服務的、帶有網絡前端的 Rust 命令行組件。我們的問卷對象和受訪者都是技術派,80% 的人說如果有必要,他們會很願意使用命令列應用程式。之所以會有目前的架構計劃,便是出於支持冷存儲的願望,但根據反饋,我們懷疑如果我們的應用程式有一個完全託管的版本,只有一小部分有明顯動機的用戶會以其他方式使用它。這些反饋是如此強烈,以至於儘管我們已經進行了從冷存儲到託管,包括設計和執行在內的工作,但南轅北轍的可能性不是沒有。


儘管我們把基於瀏覽器的dapp 作為主要的切入點討論,但是我們從6 個受訪者中的2 個收到了強烈的反饋,認為由於網絡釣魚攻擊的頻率,可下載的應用程序是一個更值得信賴和更可取的設計模式。絕大多數情況下,像 Metamask、Walletconnect、行動錢包和區塊瀏覽器這樣的工具對受訪者或問卷對象來說沒有任何問題。


雖然我們試圖讓協議與是否備份秘密無關,但我們相信所有潛在秘密擁有者都已經加入了以太坊。我們多次明確聽到,非以太坊用戶將不太可能選擇我們的社會恢復協議。也就是說,他們希望恢復夥伴能涵蓋到技術小白,連錢包都沒有的那種。我們需要考慮這個獨特的需求。


鏈上已經在使用什麼樣的「身分」,以及對匿名性的偏好


我們的核心問題之一是如何支持參與者的匿名性:需要多少程度的匿名,以及如何在保持匿名的同時還能在以後可靠地找到恢復資料?有幾個潛在的解決方案,都涉及到用某種查詢密鑰來存儲恢復數據,這些密鑰可以從用戶的主錢包中哈希得來或派生出來。


然而,我們想知道使用者的使用模式是否會支援這種做法。人們是保持一個持久的錢包,還是經常切換從同一個種子中派生的不同錢包?他們是否會產生新的種子?所有的當面訪談都證實,我們的典型用戶會有一個「主以太坊地址」,他們在任何情況下都不可能忘記。然而,有趣的是,一半的問卷對象說,有可能或其實就是,使用者已經忘記了這一點,或者從來沒有過。 「主以太坊地址」作為一個身分概念的頻率是未來研究的一個潛在領域。


總的來說,回饋很支援匿名性,但我們反覆聽到,一旦有相當多的使用者成為應用程式的一部分,「大海撈針」式的匿名程度在許多情況下就足夠了。但這之前如何啟動還不清楚,或者俱體達到哪個門檻可以實現這一點。我們與幾個受訪者討論了是否有一個公共協議,可用於將以太坊地址映射到公共加密密鑰,從而為這種匿名性提供一個啟動包,但沒有發現一個現有的項目可以填補這個角色。我們也發現,復原夥伴的匿名性比秘密擁有者的匿名性得到了更多的認同,如下圖所示。



三個問卷對象提出了他們可能會忘記誰是恢復夥伴的擔憂,我們也收到了希望能夠多次更換恢復夥伴的功能請求。


鏈上儲存與中心化儲存


我們收到了在兩種情況下在鏈上儲存加密秘密的批評,一種來自成本的角度,一種來自對密碼學的量子威脅的擔憂。沒錯,如果我們使用的任何密碼學有一天被破解,我們協議儲存的所有秘密都會受到影響。在成本方面,問卷對象和受訪者都認為 200 美元左右是應用程式的交易成本的上限,更低的成本則更受歡迎。


我們聽說,對於我們的用例,在主網上與在另一個類似以太坊的網絡,如 polygon 或 gnosischain 相比,沒有任何優勢。


最後,有人建議考慮為應用程式提供一個中心化的途徑,用戶可以選擇不在鏈上存儲,這當然會帶來其他潛在的問題(持續的維護,潛在的洩漏),但仍然可能有意義地增加可訪問性。 37% 的問卷對象表示,他們會對鏈下儲存感到更舒適。而且,協議的長期維護被多次列為關注點:在我們的團隊有可能解散或發生重大變化之後,潛在用戶如何相信恢復過程仍能發揮作用?並且,是否有任何方法可以讓秘密擁有者驗證秘密是可以恢復的,而不需要經歷整個過程?


對路線圖來說最重要的考量


到目前為止,透過最簡化產品思考,我們得到的秘密復原的一個重要方面,是秘密所有者和復原夥伴之間需要能夠進行溝通。最初的設定訊息,以及恢復資料都需要在雙方之間發送。這很可能是該系統最大的安全弱點。 100% 的問卷對象認為有可能透過不安全的帶外傳輸洩露一些秘密碎片集,我們的當面訪談也強烈呼應了這一觀點。


因為我們的受訪者中有很多是協議開發者,所以我們向他們詢問了加密式錢包到錢包的信息傳遞,以及可能有助於溝通的現有路線圖功能。一組密切相關的功能與在復原過程的各個階段對秘密所有者和復原夥伴的通知有關。我們採訪的許多錢包開發者確實在他們的路線圖上有這個功能,儘管沒有確認發布日期。在這個方向上的進一步工作看起來對生態系統非常重要,與這些解決方案中的一個整合很可能是 Dark Crystal Web3 未來的工作核心。


原文連結


歡迎加入律動 BlockBeats 官方社群:

Telegram 訂閱群:https://t.me/theblockbeats

Telegram 交流群:https://t.me/BlockBeats_App

Twitter 官方帳號:https://twitter.com/BlockBeatsAsia

举报 糾錯/舉報
選擇文庫
新增文庫
取消
完成
新增文庫
僅自己可見
公開
保存
糾錯/舉報
提交