作者:cygaar 來源:@0xCygaar 翻譯:善歐巴,金色財經
好奇Coinbase 的新智慧錢包是如何運作的嗎?我也是。以下是如何透過Touch ID 建立和使用加密錢包而無需Chrome 擴充功能的概述。
關鍵技術
這裡有一個智慧錢包實際操作的影片示範:https://x.com/0xCygaar/status/1794013681358954594
這裡發生了幾件事。首先,透過Touch ID 創建了一個錢包,然後透過Touch ID 簽署了一筆交易,最後這筆交易由Base 全額支付。
所有這些都是透過帳戶抽象化(AA),即ERC4337 實現的。
金鑰
在討論AA 之前,理解什麼是密鑰非常重要。金鑰是一種基於公鑰/私鑰加密而非傳統密碼的身份驗證形式。使用金鑰時,私鑰私密地儲存在用戶裝置上,而公鑰可以與應用程式共用。 Touch ID / Face ID 可用於防止金鑰的未經授權使用。
錢包創建
上述流程的第一步是創建一個錢包。這個錢包是一個「智慧錢包」——它是在Base 上部署的智慧合約,而不是典型的EOA。智慧錢包可能是AA 的最大解鎖點。
這個特定的智慧錢包包含允許多個所有者(包括基於金鑰的所有者)的程式碼。在AA 流程中,如果智慧錢包尚不存在,則會建立一個智慧錢包。
Touch ID 簽署
一旦錢包存在,鑄幣交易可以被簽署和執行。為此,網站將提示使用者簽署一個使用者操作(可以將其視為AA 交易)。使用者首先需要驗證他們控制了金鑰(透過Touch ID、Face ID 等)然後才能簽署使用者操作。之後,用戶操作和簽名由智慧錢包程式碼驗證並執行。
免費交易
你會注意到,演示中的使用者支付價格為0。這是因為AA 增加了一個支付服務,可以用於贊助交易。在這種情況下,Base 設定了一個支付服務來支付智慧錢包鑄造的費用。其他應用程式可以使用支付服務贊助作為無需用戶錢包中有ETH 的方式輕鬆引導用戶。
結論
這裡所有的魔法都是透過帳戶抽象化實現的。雖然AA 已經存在了一段時間,但Coinbase 的智慧錢包是第一個利用金鑰進行帳戶所有權的案例之一。未來,也可以透過傳統的Web2 登入方式如Google SSO 來控制錢包。