基於信箱的恢復私鑰功能,將如何進一步改善 Web3 使用者體驗

Kyle
分享
基於信箱的恢復私鑰功能,將如何進一步改善 Web3 使用者體驗

錢包開發商 Clave 推出了通用恢復的概念驗證 (SoC):利用傳統信箱的驗證機制搭配鏈上的協議,打造能同時保護用戶隱私又安全的社交恢復私鑰功能,提升 Web3 使用者體驗中最重要的環節 — 私鑰管理。

私鑰管理是使用者體驗關鍵

Web3 建立在金鑰對加密技術之上

Web3 利用加密技術與金鑰對,消除了中間者,將責任轉移回到使用者身上。雖然具有創新性,但也因此帶來了許多重大挑戰,特別是使用者體驗不良的問題。

使用者通常缺乏正確儲存密鑰的知識,~~且現代設備儲存密鑰的安全性上不足,~~導致現有現有 Web3 使用學習門檻高,實際上安全性卻也因為私鑰遺失的風險而降低。

廣告 - 內文未完請往下捲動

Web3 生態需要使用者體驗更友善且更安全的私鑰管理解決方案。

社會恢復優化私鑰管理

如果使用者遺失了帳戶,將失去對其資產的存取權,因此恢復機制非常重要,可增強安全性同時提升用戶體驗。現有主流的恢復機制之一即為社交恢復 (Social Recovery)。

社交復原機制需要使用者指定受信任的個人作為帳戶恢復的保護者 (guardians),當使用者遺失私鑰時,可以向保護者尋求私鑰碎片,最終取得完整的私鑰 (只有使用者知道該向誰拿取)。

藉此可以提升一般私鑰管理的使用者體驗,也可強化用戶資產的安全性。

社交恢復困難點是保護者需要擁有錢包

不過現有的社交恢復功能有個限制,需要保護者擁有區塊鏈錢包才可以運作,這項限制代表無法將此機制推廣至更大的用戶基礎。

社交恢復機制需要保護者擁有區塊鏈錢包而限制戶用群體

而 Clave 團隊為此問題打造通用恢復 (Universal Recovery) 功能。目標是讓任何網路使用者都能成為鏈上帳戶的保護者,即使他們自己沒有區塊鏈錢包。

通用恢復機制介紹

考慮到超過 40 億人擁有至少一個電子郵件地址,利用電子郵件創建一個鏈上錢包將可以徹底改變社交恢復系統,團隊將之稱為通用恢復,原理是授權特定電子郵件啟動復原流程。

Clave 團隊基於 EIP-4337 標準的復原機制開發了通用恢復的概念驗證。該實做讓用戶能夠指定擁有電子郵件地址的任何朋友作為保護者,擴大了 Clave 錢包中帳戶恢復選項的範圍。

傳統郵件驗證方式:DKIM

傳統電子郵件協議使用域名金鑰辨識郵件 (DomainKeys Identified Mail, DKIM) 的方法來保證資料完整性。DKIM 採用 RSA 金鑰對,與 Web3 金鑰演算法相似但又不同。

DKIM 驗證機制

電子郵件寄件者的伺服器使用私鑰為每封電子郵件產生唯一的數位簽名,然後將其附加到電子郵件的標頭。

收件者的伺服器使用 DNS 記錄中提供的寄件者的公鑰來驗證簽名,若公鑰可以成功驗證簽名,則可確認電子郵件的真實性和安全性。

為了實現上述機制,每封電子郵件都有附帶這三樣東西 (其時會發現這就跟區塊鏈的簽名機制是類似的):

  • 訊息:信件內容本身
  • 簽名:利用私鑰、訊息、簽名函數產生
  • 公鑰:讓接收者驗證簽名

將驗證機制搬到區塊鏈上

如果今天可以在鏈上而非接受者的信箱伺服器上驗證這個流程,那麼就可以確保在保護人的意圖下觸發私鑰恢復的合約,以達到利用信箱提供恢復私鑰的功能。

但直接在鏈上驗證 DKIM 會破壞隱私,因為每封電子郵件都包含簽名、訊息、公鑰和寄件者地址;另一方面,區塊鏈本身並不支援 RSA 簽名,驗證簽名的成本也可能很高。

因此 Clave 團隊需要其他方式,而最後選擇使用零知識證明來解決上述問題。

ZKEmail 利用零知識證明保護隱私

透過鏈上的 ZKEmail 協議,協助驗證上述 DKIM 機制,藉由創建零知識證明向鏈上證明訊息源自於特定電子郵件地址,並直接連結到該電子郵件的鏈上地址,簡化基於電子郵件與區塊鏈技術整合的過程,同時確保了隱私和效率。

ZKEmail 鏈下完成驗證 DKIM,並向鏈上提交零知識證明

以下是 ZKEmail 協議雲做流程概述:

  1. 使用者使用他們的電子郵件地址簽署訊息。
  2. 已簽署的訊息、簽名、公鑰被發送給證明者。
  3. 證明者驗證電子郵件的 DKIM 簽名,然後根據該資料產生零知識證明。
  4. 該零知識證明在區塊鏈上被進行驗證,建立基於電子郵件的鏈上帳戶身份以供使用。

此實做的證明驗證需要消耗大量燃料費,不過幸運的是 ZK Email 的使用主要是為了恢復私鑰為目的。因此僅在恢復時才需要使用,成本實際上對於用戶的使用並沒有造成顯著影響。