4 月 5 日,JoyID 創始人兼 CEO Cipher 在登鏈社區直播分享了 JoyID Wallet 這款產品,以及它的原理,還展望了 Web3 領域錢包的未來發展。
以下是字節君根據直播視頻整理的內容概要:
錢包創新會是區塊鏈的下一個推動嗎?
我們可以看到 3 個現狀:
1、越來越多的資本和開發者進入了 Web3。大家普遍認爲 Web3 還是一個重要的敘事,雖然最近被 AI 給搶了一點風頭,但資本和開發者還是願意進來的。
2、Web3 目前的主流用戶畫像是投機用戶,還有擼羊毛用戶。
3、整個 Web3 的 DApp 領域,DeFi 這個敘事在往下走,甚至很弱了,Game、Social、NFT、音樂等出圈應用在興起。
這個時候,你會發現 Web3 的敘事和現狀出現了矛盾。Web3 的敘事是取代 Web2,或者至少用戶基數和 Web2 一樣,但目前 Web3 真正的用戶並不多,使用錢包的用戶可能全球不超過兩三千萬人。
爲什麼會有這個矛盾?一個很重要的原因是錢包擋住了用戶,用戶進不來。
錢包存在 3 個普遍的問題:助記詞學習曲線太高,私鑰丟失無法復原,手續費需要用戶支付。目前的這些錢包產品,對技術極客來說,安全但不便利;對 99% 的人來說,既不安全也不便利,不安全是因爲他們大部分人不具備管理私鑰的能力。
當然,目前也出現了幾種針對錢包的解決方案:
智能合約錢包:可以解決私鑰丟失無法復原以及手續費需要用戶支付這兩大問題,但並沒有解決助記詞學習曲線太高的問題。智能合約錢包還存在成本高的問題,以及多鏈同步的問題。
MPC(多方安全計算):可以解決助記詞學習曲線太高和私鑰丟失無法復原的問題,且無條件支持多鏈,但並沒有解決手續費需要用戶支付的問題。MPC 的本質是 SaaS,不論 MPC 錢包幫你把私鑰分成了多少碎片,最終每一筆交易簽名其實都依賴於 MPC 的服務器去幫你做一些事情,而且只能依賴它這一家,所以也存在很高的風險。
其他方案:託管錢包,或者是僞裝成 MPC 的託管錢包,以及使用了 MPC、合約和其他技術的混合錢包。
特別提醒,只要牽扯到 MPC,就需要問下自己是否真的打算用一個 SaaS 錢包?另外,尤其要警惕只需驗證一次就完成登錄的 MPC 錢包。
JoyID 錢包的特點
在介紹 JoyID 之前,大家可以先試玩一下 JoyID 的測試版,它支持 Windows 電腦、Mac 電腦、蘋果手機,以及安裝有谷歌服務(GMS)的安卓手機。
測試版鏈接:https://app.joyid.dev
CKB 測試幣領取地址:https://faucet.nervos.org
JoyID 錢包具有以下特點:
無密碼、無助記詞:直接通過指紋創建錢包,確認交易。
無需依賴任何 Web2 賬號:不需要手機號,不需要郵箱......
去中心化、真非託管:密鑰在你的設備的安全芯片裏生成,JoyID 只能讀取你的公鑰並請求籤名,並不能讀取你的私鑰。
無需安裝:不用下載 App,只要打開網頁就行了,也很方便被其他應用集成。
多設備登錄:測試版需要在其他設備上輸入地址後再開始授權登錄,後面會優化成直接掃碼登錄(類似 Telegram 的多設備登錄方式)。
支持助記詞、社交恢復、Passkey 等多種恢復方案(可選)。
擁有超越 Web2 賬戶的體驗。
JoyID 的設備支持範圍非常廣,賬號創建可以在 Windows 10/11、MacOS(需要支持 TouchID)、Android 7.0+(需要有 GMS)、iOS 14.5+ 等系統的瀏覽器中實現(不要用 “魔改” 的瀏覽器,比如微信瀏覽器),而 JoyID 賬號的登錄對設備的系統沒有要求,支持全平臺登錄。Linux 系統後面也可以用,只不過需要使用 Yubikey 來生成公私鑰。
JoyID 的原理介紹
首先科普一下 JoyID 的密碼學基礎:WebAuthn/Passkey。
WebAuthn 是 FIDO 聯盟推出的,很多 Web2 大廠(比如微軟、谷歌、蘋果等)都在支持的下一代無密碼賬戶技術。這項技術在每一臺設備上內置了一個叫安全芯片或者說安全區的 TEE(獨立於 CPU 芯片),然後在裏面生成公私鑰對。其安全性達到了硬件級別的安全性,並通過生物識別技術進一步保障使用安全。
Passkey 則在 WebAuthn 的基礎上,實現了多個設備之間的互通或者互相授權。
這項技術原本是給 Web2 的賬號系統來使用的,但我們把它用到了區塊鏈上,還給它起了個名字叫 “設備賬戶”。設備賬戶是什麼意思?本質上它是一個合約賬戶,但是這個區塊鏈合約賬戶的私鑰不是通過助記詞來保存的,而是用設備上的硬件芯片來保存。通過使用 WebAuthn/Passkey 技術,在不需要安裝的情況下,可以直接在網頁環境裏面使用系統的安全芯片來做密鑰生成和簽名,然後通過賬戶抽象技術,將多個設備密鑰綁定到同一地址上,在區塊鏈上公示出來,同時也提供賬戶恢復功能。
WebAuthn/Passkey 採用的密碼學算法是 P256/RS256 等,和主流區塊鏈使用的 secp256k1 還不一樣,所以這裏就需要區塊鏈擁有賬戶抽象的能力,能支持其他密碼學源語。這樣的區塊鏈很少,而 Nervos CKB 正好可以滿足這點,所以 JoyID 選擇了在 Nervos CKB 區塊鏈上做開發。
這裏再科普一下 Nervos CKB 上基於 UTXO 的賬戶抽象。其實每一個 UTXO 都由一個鎖定腳本來管理使用權限,使用者只要提供正確的證明即可解開鎖定腳本。通常情況下,“證明” 即數字簽名;“鎖定腳本” 即驗籤算法,例如 secp256k1,而鎖定腳本即 “地址”。Bitcoin 是第一個使用 UTXO 模型的區塊鏈,但 Bitcoin 的鎖定腳本不是圖靈完備的,且有很大的限制。Nervos CKB 在 Bitcoin UTXO 模型的基礎上做了改進,並提供了基於 RISC-V 虛擬機的圖靈完備腳本,所以 CKB 上所有的賬戶都是 full-featured 抽象賬戶。
很多人可能會問,JoyID 基於 Nervos CKB 做開發,是不是隻支持 CKB 而不支持其他 EVM 鏈?其實不是的,JoyID 會支持多鏈,除了 CKB 鏈外,也會支持 CKB 的側鏈 Axon,而 Axon 100% 兼容 EVM 且有着非常高的 TPS。其實只要把其他 EVM 生態無縫地遷移過來,再配合 JoyID 這款低門檻錢包,就可以滿足新用戶的需求了,因爲他們不會特別在意自己在玩哪條鏈,只在意生態裏可玩的項目多不多。
這裏再解釋一下背後的技術原理。以太坊上的交易由原始交易和數字簽名兩部分組成,其中數字簽名由節點校驗,校驗通過後就讓 EVM 去執行交易內容,EVM 並不會去校驗數字簽名。所以,我們可以把以太坊的數字簽名換成 JoyID 的簽名,節點遇到 JoyID 的簽名時,把這個簽名丟給 CKB 去校驗,校驗通過後再把交易內容交給 EVM 去執行。這樣就能做到 100% EVM 兼容了。
現在 Axon 的開發已經接近尾聲,所以大家能看到 JoyID 的測試版裏有 ETH 和 USDT,目前是灰色不可用的狀態,但再過個把月就可以玩起來了。
最後,有必要提一下 JoyID 的全流程開源和去中心化。JoyID 的合約還在審計中,審計完後會開源,開放訪問;中間件也會開源,且允許第三方自行部署;前端同樣會開源,任何人都可以部署,且支持離線簽名。JoyID 的賬戶密鑰,則完全在用戶側持有和管理。所以,JoyID 真正地實現了全流程開源和去中心化。
全流程開源和去中心化在整個 Web3 的基礎設施裏面是非常重要的,因爲當你的用戶數達到一個量級時,比如說 10萬以上,你遲早會意識到你不可能一直依賴於一箇中心化、不透明的 SaaS。
Web3 錢包的未來
首先說兩個我自己的判斷:
1、錢包生來就是用來代替 Web2 賬戶的。
2、通過郵箱、手機號、用戶名和密碼、谷歌登錄等方式作爲入口的錢包,一定是中間狀態,因爲錢包要替代 Web2 賬戶,就不能讓它依賴於 Web2 的賬戶服務。
有些人可能會問,Web2 賬號服務我用得挺好,爲什麼要換成 Web3 賬戶?因爲 Web3 賬戶有很多優勢:
1、沒有密碼,不怕服務器泄漏或者被社會工程學,更加安全;
2、不需要提供郵箱/手機號,隱私性更強;
3、應用方對接不需要中心方允許,更加開放;
4、賬戶自我主權,不依賴中心方,獨立存在,更加可靠;
5、天然具備支付和收款功能,以及更多去中心化服務。
有些人可能還會問,既然 Web3 賬戶這麼好,爲什麼現在用的人卻很少?這個當然有歷史原因,但我覺得更重要的是 Web3 門檻太高了。所以 JoyID 纔會想把門檻降到比 Web2 還低。
門檻降低後,顯然會有更多的人進入 Web3 世界,而且 Web3 賬戶的 permissionless、開放性、可組合性,會讓越來越多的 Web2 應用開始使用 Web3 賬戶,最終導致 Web2、Web3 沒有明顯界限。