咱們是被互聯網寵幸的一代,在成長的過程當中也見過了無數的互聯網爆品項目,隨着流量等時代的紅利而高歌猛進,成爲了獨角獸,甚至是當今特定場景的一方之霸,例如騰訊、阿里、拼多多等互聯網巨頭。在互聯網井噴般環境下薰陶的咱們,投入了區塊鏈領域之後,心情多是矛盾的。算法
一方面驚歎區塊鏈的成長速度居然如此之快,這個月流動性挖礦,下個月算法穩定幣,以後還有 NFT,NFT 和 DeFi 還能玩出 GameFi,各類新的戲法不斷涌現,讓人隨時都有新鮮感。segmentfault
可是另一方面,現實也是骨感的。除了看盡行情的起起落落外,咱們同時也很清楚,真正使用 dApp 的參與者寥寥。流動性挖礦幾周、幾天的盛況,不久隨即杯盤狼藉,這樣的畫面也已經家常便飯。瀏覽器
區塊鏈彷佛讓咱們看到將來的輪廓,但你們卻沒法有底,究竟何時能看到公鏈應用的大規模落地,像互聯網產品同樣獲取真實的用戶?我想,在此咱們有個清晰,可是實現起來卻不容易的答案,那就是:咱們必須讓區塊鏈產品和用戶沒有距離。安全
咱們至今依然很難看到一個你們都公認的區塊鏈「爆品」,筆者認爲緣由有不少種,每一個人可能也會有本身的版本。在這裏,我試着結合本身的區塊鏈經驗,總結出一個區塊鏈爆品公式:服務器
區塊鏈爆品 = 滑順 x 高頻應用 x 新流量架構
從之前到如今,產品的使用滑順,可以有足夠吸引人的場景,以及能找到被吸引的那羣人,其實這幾點缺一不可。可是,在區塊鏈上,目前卻很難有長期吸引新用戶的爆款產品。ide
在區塊鏈圈子裏,咱們能夠經常看見一個不正常的現象:在交易所買過的資產,咱們不必定真正用過它背後的產品, 就像不少人買了 UNI ,可是從沒有用過 Uniswap,甚至不少人炒幣炒了三五年,還不必定有使用過 MetaMask 去玩過任何 DeFi、NFT。持幣者多於真實用戶,這個可能和外在的互聯網世界的邏輯徹底相反,以股票爲例,持股人數量多餘用戶數量的 C 端項目根本不可能存在。工具
這種怪奇現象的背後,有一個很重要的緣由,那就是用戶門檻太高。即便我是一個想要使用 DeFi 的用戶,錢包的建立、私鑰保存對不少用戶來講已是一大阻力,更別說後頭還會遇到交易速度慢,以及手續費如何支付才合理等等。學習
一個坑接着一個坑,一個坎兒接着一個坎兒,光是使用錢包的邏輯這一塊就已經足夠整死用戶了,那即便背後有財富效應或者其餘高頻誘因的應用,也難以去打動新用戶。說句可能不動聽但卻寫實的話,那就是對於用戶而言,在體驗上,助記詞、私鑰保存以及插件錢包等等都不是什麼太過於「先進」的體驗,而是使用區塊鏈產品的必要之惡。區塊鏈
滑順的使用體驗是區塊鏈產品可以產生爆款的前提和必要條件, 這很是考驗區塊鏈產品人對於技術理解的造詣以及對於用戶痛點的同理心。若是用互聯網的語境來講,其實滑順體驗背後就是一種技術創新,它會推動新場景以及新用戶羣體進入區塊鏈產品的世界。
今天,若是區塊鏈產品可以儘量下降使用的門檻,例如像通常的互聯網產品同樣經過郵箱驗證、指紋識別就可以生成區塊鏈帳戶,而且用它來進入任何的 dApp,那麼區塊鏈世界的格局或許會繼續往上提高一個層級。
這個時候,有個 Game Changer 出現了,那就是 Lay2 團隊的 UniPass。
今天 UniPass 從新定義了用戶進入區塊鏈世界的入口——錢包。 這是一款由 Lay2 團隊通過經年累月的迭代而打磨出來的產品,固然產品也還逐漸在進化中。他們對於錢包的理解和實現,可能有點顛覆了咱們過往對於區塊鏈非託管錢包的印象:
一、錢包不是必定非得要用戶記下複雜的助記詞
在 UniPass 中,任意的簽名驗證均可以在不失去安全性的狀況下,讓用戶方便地使用各類方式建立區塊鏈帳戶。這點不但考驗着錢包的實現能力,也考驗着公鏈的兼容能力。在 UniPass 上,你能夠看到,記下助記詞這種步驟不需存在,取而代之的是互聯網既有的簽名驗證工具生成的公私鑰。
二、錢包不是必定只有一種方式能夠生成密鑰
錢包的背後是無數的 dApp 應用,錢包必需要有人使用纔有意義,而應用則是但願可以有來自四面八方的用戶都用上個人 dApp,所以接入 dApp 的錢包可以開啓各扇不一樣的門,來迎接不一樣入口的用戶,這是一大重點。在這點上,UniPass 也在它的登入選擇上比通常的錢包多元。長期來講,互聯網的 R一、RSA,比特幣、以太坊的 K1 或者硬件錢包,均可以生成 CKB 上的區塊鏈帳戶。
三、錢包不是必定非得是用戶不熟悉的操做界面
安全感是用戶在使用產品時必備的條件,界面越是熟悉其實用戶越可以放心地使用。過去,用戶可能對於 MetaMask 或者其餘移動錢包做爲入口很是不熟悉,固然更別說讓他登入的界面是經過硬件錢包,這更是天方夜譚。其實,區塊鏈帳戶可以在不少用戶熟悉的互聯網頁面直接生成。
四、錢包更不是必定要用戶下載某個 App 或者插件
過去幾年,在區塊鏈圈子中,你們已經潛移默化地有了一個概念:對 dApp 而言,錢包就是一個插件或者一款手機 APP,用戶使用 dApp 時必須依賴着這個「額外」下載的插件錢包,或者在咱們「額外」下載錢包的瀏覽器之中才能打開咱們的 dApp。這些其實都爲用戶帶來了許多沒必要要的步驟,由於多一個路徑,就表明這個產品又拒絕掉了一批用戶。
可是在 UniPass 中則有所不一樣。下圖是 UniPass 錢包的界面,咱們能夠發現一個很特別的點:錢包它是一個網頁的形式,不論在電腦、手機、平板,咱們均可以在任一網頁瀏覽器中打開 UniPass 錢包。
▲ 祕寶錢包可以單獨開啓,也可以鑲嵌在任何 dApp 的登入彈窗之中,來源:UniPass & Mibao
緊接着你可能會問,怎麼樣可以在這個錢包中建立一個 Nervos 的錢包帳戶呢?你只須要建立一組屬於本身的帳號密碼,而且經過郵箱的驗證碼就可以生成一個區塊鏈錢包。 同時,它還可以放置在任意 dApp 的登入頁面中,以彈窗的方式呈現出登入的入口,如此一來,錢包就不是你須要去下載的插件或者手機 App,而是你要用時,任何開發者均可覺得你準備好的進入入口。
這不是在吹牛,也不是魔法,固然過程當中更不可能發生像某家公鏈的錢包同樣,當你給它你的郵箱,它發給你竟是明文私鑰的愚蠢行爲。UniPass 之因此能帶來滑順的使用體驗,背後是 Lay2 團隊的精心構思和 Nervos CKB 開放的密碼學驗證體系的結晶。
UniPass 背後的黑魔法有什麼祕密呢?這有賴於 Nervos 可以支持各類密碼學原語的底層虛擬機,以及不設限解鎖規則的 Cell model ,固然還有 Lay2 對於 UniPass 精良的架構設計。
對於 Nervos 可以靈活地支持各類既存的簽名算法,而不用讓用戶再建立一組新的錢包這個特性,我想已經不用贅述,你們能夠參考過往的一些文章就能夠了解其中的原理。在這裏,我想着重介紹的是,即便有了靈活的底層,UniPass 也必須有足夠精妙的設計,纔可以讓用戶有滑順的區塊鏈體驗 , 這點 Lay2 是怎麼辦到的?
安全是錢包徹底不會妥協、也不能讓步的要點,安全性不足的錢包就像是窗戶破了洞的飛機,隨時均可能土崩瓦解,即便是豪華的 A380 也同樣。但用戶體驗卻又很是重要,所以在 UniPass 這個輕量級的錢包上,有着精緻的雙層架構來保護密鑰的安全,而且兼顧到了使用的方便性。
UniPass 的雙層架構以下圖,由 MasterKey 和 LocalKey 組成:
▲ UniPass 的受權以及與 dApp 交互的方式
MasterKey 是這個錢包真正的公私鑰對,它能夠是任何的簽名算法,包含通常網頁瀏覽器的端到端加密工具 Subtle Crypto 所支持的 RSA 算法,區塊鏈玩家比較熟悉的以太坊、比特幣的簽名算法,固然也能夠是硬件錢包,甚至是 Yubikey。
所以,咱們能夠知道,在 MasterKey 層次上,UniPass 賦予了很大的活性去支援各類簽名算法,讓用戶可使用各類既存設施的 Key 作爲本身 Unipass 的密鑰。通常而言,UniPass 已經預設了用戶什麼設施也沒有,能夠直接在網頁瀏覽器經過 Subtle 生成一組屬於本身的公私鑰 , 固然也爲進階的加密貨幣玩家以及 Degen 們準備了進階的方法。
LocalKey 爲用戶端真正會接觸到的 Key ,用戶在登入 UniPass 或祕寶錢包時所輸入的密碼,其實就是在使用 LocalKey。這樣的好處,是咱們能夠確保 MasterKey 私鑰在連網環境下沒有過長時間的暴露,同時經過 MasterKey 對 LocalKey 的受權簽名,咱們還可讓 LocalKey 支援的 Subtle 和 WebAuthn 生成的密鑰作爲代替 MasterKey 的密鑰。
如此一來,咱們就能確保日常用戶和 dApp 交互時,咱們並不會讓用戶的 MasterKey 密鑰直接暴露在使用環境中。同時,因爲 LocalKey 能夠被保存在裝置中的 IndexedDB 內存中,其私鑰沒法被導出,所以在不會泄露密鑰的前提下,還可以維持持續登入的好體驗。
若是有人對於密鑰的安全感興趣,想更進一步瞭解的話,筆者認爲 UniPass 的交易驗籤值得深刻探討。在 UniPass 中,因爲 MasterKey 對於 LocalKey 進行了受權,所以 LocalKey 能夠開啓這個錢包,在此處,交易驗籤其實須要驗證的內容分別是:
MasterKey 的受權簽名和 LocalKey 的簽名必須同時具有才可以使用該帳戶的資產。
機智的你可能在這個時候想到了一個問題,那就是:若是這不是一個託管錢包,那麼咱們的密鑰存儲在哪裏呢?
其實這個問題能夠分紅幾個層次去回答。在目前暫時的版本中,用戶 MasterKey 的 Keystore 會以密碼強加密的方式存在雲端服務器中,可是隻有擁有密碼的人才有辦法使用,也就是用戶本身。 同時,在用戶自身裝置的 IndexedDB 內存中,會保留不能夠導出的 LocalKey,以及等於地址效力的 MasterKey-pubkey,還有 MasterKey 對 LocalKey 的受權簽名。如此一來,咱們確保了用戶的使用和密鑰的安全,將來據 Lay2 團隊透露,UniPass 的 MasterKey Keystore 也會支持用戶自行下載保管。
接下來,可能還會有眼尖的朋友會問,那麼恢復機制是怎麼回事呢?
固然,同樣是受權的魔法起了做用。在咱們建立帳戶時,其實咱們的 MasterKey 受權了兩把 Key,一是咱們的 LocalKey,另一個是就是咱們的郵箱。
域名密鑰識別郵件(DomainKeys Identified Mail,DKIM)是一套電子郵件的認證機制,提供了數位簽章與身份驗證的功能,以檢測寄件者、主旨、內文、附件等部分有否被僞冒或竄改。目前,絕大部分的郵箱,例如 Gmail、QQ 郵箱等,都已經具有 DKIM 。
經過 MasterKey 對於郵箱的 DKIM 簽章受權,咱們可讓 CKB 鏈上去驗證「DKIM 的發出單位,是否是指定的郵箱所發出,以及是否帶有受權簽名」,進而讓咱們能夠轉移本身帳戶的資產。這就是讓咱們能夠在忘記 UniPass 的密碼,也就是丟了 Key 的時候還能夠恢復這個資產的辦法。當你忘記密碼的時候,這世界上是沒有其餘人可以幫你保存 UniPass 非託管錢包的公私鑰信息,咱們可以依靠的唯一辦法,就是你起初的註冊郵箱的簽名,由於 UniPass 已經事先受權了這個郵箱的簽名能夠解鎖該 Cell 的 lock。
固然,這背後也還有一個安全機制,那就是經過郵箱恢復解開 lock 的這個動做。必須經歷約 48 小時的時間後,纔可以轉移該帳戶上面的這些資產,以免有人惡意地盜用郵件從而盜取資產。郵箱恢復是 Lay2 的 UniPass 設計的精妙之處,它成功地讓天天上億人都在使用但卻從未在任何區塊鏈中扮演密鑰角色的郵箱 DKIM 簽名,首次在 Nervos 鏈上扮演了用戶的入口, 這是 Nervos 的第一次,也是區塊鏈領域和這個咱們最熟悉的互聯網設施進行整合的第一次。
▲ LocalKey 和加密遺囑的受權
▲ 紅包中的 NFT 由社區才華橫溢的 Rossum 大大創做
UniPass 還有一個紅包的功能,可讓任何人拿走你的加密貨幣資產,還能夠用口令和謎語紅包,紅包中的資產目前有 NFT,甚至將來還能 Fungible Token。
在使用 UniPass 的紅包功能時,你可能會以爲很神奇,爲何咱們能夠輕易地發出 CKB 鏈上的 NFT 紅包呢?
答案很簡單,仍是神奇的受權。
發紅包的動做其實是用戶選擇好了要發送的 NFT 後,咱們經過發紅包這個動做在鏈下簽名受權了一對 Key,能夠打開咱們存放資產的 Cell 的 lock,並轉移走咱們的資產。所以,發紅包的動做其實也是一種受權。若是你的紅包是口令紅包,那麼其實咱們就是用這個口令或者謎底去對這把 Key 進行加密,而輸入 Key 的人就能夠轉走這筆資產到你本身的 UniPass 帳戶,這就是爲何咱們晚來就搶不到紅包的緣由,由於已經有人早咱們一步拿走這把 Key 而且轉移走其中的資產了。
若是你是眼尖一點的小夥伴,你甚至還會發現一件有趣的事情,那就是在這個過程當中(以下圖),咱們只進行了一筆鏈上的交易,即讓搶到紅包的用戶轉走資產,而包紅包其實只是對 Key 的鏈下受權, 這個動做其實也能夠顯現 Cell Model 的輕巧之處。
上面這些用戶都不須要懂,用戶要作的就是享受! 沒錯,對於通常用戶而言,我上一部分的內容基本都是廢話。由於用戶並不須要瞭解原理,只須要享受就好。
用戶不須要在他不須要動腦的地方被教育,這多是任何領域產品設計的極致境界,就像我曾經聽過 Apple 的某位主管說蘋果的產品是不須要讓用戶看說明書的,這點在 UniPass 上也相同。
在 UniPass 上,咱們不會看到這個錢包要求用戶理解區塊鏈。
在 UniPass 上,咱們也不會看見錢包對於用戶的「使用前考試」。
在 UniPass 上,用戶要作的就是盡情地享受區塊鏈技術爲其帶來的便利以及資產自主管理權。 即便上述的技術架構是複雜的,可是在用戶面前呈現的使用步驟,基本上都可以符合用戶既有的使用習慣與經驗,可以讓用戶直接操起手邊的郵箱,或者 WebAuthn 的生物識別等工具,就開始玩轉區塊鏈 dApp。我想這就是 UniPass 這個萬用通行證想作到的。
固然,UniPass 毫不僅止於此,將來它可以和許多的互聯網網頁進行結合,也可以和不少的區塊鏈基礎設施以及應用結合。 咱們能夠預見,將來的 dApp 再也不須要用戶下載插件錢包,再也不須要用戶下載錢包 App,而是可以直接在 PC 或者移動端的網頁中,透過 dApp 接上 UniPass 的 SDK 而直接生成區塊鏈帳戶,同時在傳統的網頁端也能夠直接使用 Unipass 作爲登入的憑證,例如論壇等等。
如此一來,咱們可以看到更多的好比論壇積分等過去在互聯網中須要存儲在中心化服務器上的資產,能夠變爲用戶所可以本身握有的資產。以下的示意圖所示,將來沒有錢包的用戶,在 dApp 上能夠有直接使用 UniPass 登入的機會,傳統互聯網的網站,例如論壇,也能夠經過 UniPass,爲用戶開啓其餘去中心化的使用場景,由於此時的用戶帳戶已經具備了接收資產的能力,而這個時候用戶也不須要額外改變本身的使用習慣。在這樣的狀況下,紅包等點對點的價值傳遞以及社交屬性的應用,也能借由這個機會開啓一扇窗。
▲ 任何 dApp 將來能夠爲沒有區塊鏈錢包的用戶提供便捷的入口,來源:Curve.fi (僅爲示意)
▲ 任何互聯網網頁均可以藉由這個入口開啓區塊鏈應用
最終,在消除了沒必要要的用戶壁壘後,咱們會看見區塊鏈和用戶再也不有距離,在 Nervos 鏈上任何有新流量的場景以及高頻應用,將能夠在 UniPass 等技術創新基礎設施下,提供給用戶更好的使用體驗,而且確保這個場景實際存在的用戶不會由於技術門檻而被排除在外。這時候區塊鏈的全面落地之路,又所以向前邁進了一步,區塊鏈的爆品到來的那天也所以更靠近了一點。
一、本文謝謝 Lay2 團隊的史迪仔、知縣不厭其煩的指教與技術細節的分享,沒有他們就沒有這些內容和愉快的學習過程。
二、UniPass 是個迭代很是快速的產品,可能隨時會有內容和設計上的更新迭代,一切的架構和內容以 Lay2 團隊的實時更新爲準。
8 月 4 日,雷兔科技創始人兼 CEO 知縣在登鏈公開課上,給你們分享了低門檻加密身份 UniPass 的技術實現。沒來得及觀看直播的小夥伴,能夠在 B 站上查看視頻回放: