NEAR 的錢包設計以及對非區塊鏈用戶的“漸進式安全性”

錢包在 NEAR 生態發展中扮演了不可或缺的重要作用。對區塊鏈用戶、開發者甚至那些還未接觸過區塊鏈的用戶而言,平臺提供的工具是否簡單易用以及用戶界面是否友好等影響用戶直觀體驗的問題,決定了 NEAR 生態是否可以繁榮發展。

區塊鏈錢包及其重要性

NEAR 的錢包設計以及對非區塊鏈用戶的“漸進式安全性”

NEAR 的錢包設計以及對非區塊鏈用戶的“漸進式安全性”

與傳統意義上的錢包不同,加密錢包並沒有真正的存儲數字資產。加密錢包就是和區塊鏈上資產互動的一種工具。這些錢包可以生成必要的信息來完成發送和接受加密貨幣的交易(通過區塊鏈)。另外,此類信息中包含了一對或者多對公鑰和私鑰。同時加密貨幣錢包中還包括了一個基於公鑰和私鑰生成的公共地址,該地址是一組字母數字的標識符。

該地址在本質上代表了區塊鏈上一個特定的“位置”,該位置則可以用來接收數字資產。這就意味着用戶可以將該公共地址與別人分享以此來接受資金,但切記不能透露私鑰。因爲,私鑰將提供對錢包內數字資產的訪問權。因此,即使一臺計算機或者智能手機存在安全威脅的話,用戶仍可以通過相應私鑰(或者助記詞)對鏈上的資金進行訪問。實際上,這些資產(通證)從未真正離開過區塊鏈,它們只是從一個地址轉移到另一個地址。

NEAR 的錢包設計以及對非區塊鏈用戶的“漸進式安全性”

現存的區塊鏈錢包可以被分爲三種:軟件錢包、硬件錢包以及紙錢包。而根據工作機制則可以將它們分爲熱錢包或冷錢包。市面上大部分加密錢包都是軟件錢包,與硬件錢包相比更方便使用。然而,硬件錢包則相比於其他類型更加安全。誠然,也有打印在一張紙上的紙錢包,因爲不易保存且易丟,所以這類錢包並不常見。熱錢包所指的是以任何方式與網絡連接的錢包。

比如說,當用戶在交易所創建賬戶,並向錢包發送資產時,所使用的就是交易所的熱錢包。這些錢包很容易創建,並且資金可以快速的存取,這對於交易者和其他用戶來說較爲方便。另一方面,冷錢包則是與互聯網無任何連接。取而代之的是,它們使用實體媒介來進行脫機存儲密鑰,這也使得它們可以抵禦在線的黑客攻擊。因此,冷錢包在保存代幣方面更加安全。此種工作方式也被稱爲冷存儲,對於長期投資者或 HODLer 來說更加合適。

但對於一個剛接觸區塊鏈的用戶或者非區塊鏈用戶而言,錢包的概念還是和傳統意義上的相差較大,一時半會兒可能會被各種複雜的操作流程所迷惑。

爲了解決新用戶和區塊鏈資產交互的這一痛點,NEAR 特地設計了一個便捷且安全的 NEAR 錢包,來爲用戶提供一種不遜於當今互聯網的性能和使用體驗。在 NEAR 平臺上,即使不懂區塊鏈的用戶也可以與鏈上應用無縫鏈接,甚至沒有通證也可以使用 DApp。

NEAR 對用戶體驗的優化以及錢包設計

NEAR 的錢包設計以及對非區塊鏈用戶的“漸進式安全性”

NEAR 的錢包設計以及對非區塊鏈用戶的“漸進式安全性”

NEAR 在提升用戶體驗這方面,主要做了三件事。

第一,通過漸進式安全性,大幅降低了用戶的入門門檻。關於漸進式安全,下文也會有具體闡述。

NEAR 的錢包設計以及對非區塊鏈用戶的“漸進式安全性”

助記詞 / 硬件錢包選項

第二,可以完全隱藏複雜的區塊鏈細節。比如用戶無需考慮交易的細節(要支付多少 Gas 費),同時也無需擔心記不住公鑰、私鑰或者助記詞。比如已在 NEAR 主網上部署的 電子賽馬遊戲 Zest 就是一個很好的例子。用戶只需要郵箱註冊即可以參與競賽,無需搞懂複雜的區塊鏈概念。

第三,終端用戶可以直接使用基於智能合約的可擴展賬戶模型。一來用戶可以有定製化的使用權限,二來用戶可以有簡單可讀的賬戶名。

同時,NEAR 的錢包是一個網頁錢包,但對移動端很友好(mobile friendly - 即界面會根據手機大小動態調整),也支持像 Ledger 這樣的硬件錢包來保管私鑰。網頁錢包獲客成本很低,用戶無需下載並安裝新的 app,即可立馬接入 NEAR 區塊鏈,進行鏈上交易。雖然網頁錢包本身可能安全性沒有 App 錢包高,但用戶也可以通過硬件錢包備份,從而達到、甚至超出 App 錢包的安全性。

漸進式安全性

NEAR 的錢包設計以及對非區塊鏈用戶的“漸進式安全性”

NEAR 的錢包設計以及對非區塊鏈用戶的“漸進式安全性”

漸進式安全性,可能聽上來並不是特別好理解。舉個例子來解釋這個概念。

NEAR 的錢包設計以及對非區塊鏈用戶的“漸進式安全性”

假設有一個從沒接觸過區塊鏈的用戶購買數字資產。他們可能會在本地設立錢包賬戶並在那裏存儲資產,或將資金存儲在 Coinbase 或其他中心化交易所上。通常情況來看,大部分人會選擇後者,因爲他們會覺得中心化的託管會更放心。類似的邏輯也適用於各種 DApp。當用戶開始與區塊鏈交互時,他們能夠通過託管解決方案進行交互。但中心化的託管安全性有待考證 , 因爲過於中心化的權力有能力直接接管用戶的賬戶,而黑客成功攻擊中心化的交易所後即可獲得用戶的資產,歷史上類似的事件也多次發生過,比如著名的“門頭溝事件”就是如此。

舉一個錢包安裝的例子來說:大多數人是從 Firefox 或 Chrome 擴展目錄來安裝 MetaMask (一款區塊鏈數字資產錢包),但從源代碼安裝 MetaMask 是極其罕見的。中間可能因爲各類應用商店的緣故,用戶的數據或者資產可能會被 iTunes,PlayStore,Chrome,Mozilla,Google 等中心化的機構獲取,從而導致資產並不是 100% 安全。但如果直接從源代碼安裝的話,過程又非常複雜,用戶體驗並不友好。安全性和易用性往往不可兼得。

現在市面上出現了一些解決方案,開發者可以將它們集成到 DApp 中,這樣就可以在不安裝瀏覽器插件和錢包應用程序 (比如 Portis) 的情況下與應用程序進行交互。此類服務的問題在於,一旦用戶允許自己的私鑰信任此類服務,最終賬戶的安全性將受到永久損害。如果以後想要獲得該帳戶的完全所有權,他們必須創建一個新帳戶,並將所有資產轉移到該帳戶。如果一個特定的應用程序不能提供一種方便的方式來轉移資產,那麼用戶將永遠無法獲得對這些資產的完全所有權。

NEAR 的錢包設計以及對非區塊鏈用戶的“漸進式安全性”

解決這個問題的一種方法是使用基於智能合約的帳戶,這樣用戶可以在需要時替換控制帳戶的密鑰。但要實現這一點,從第一天起,帳戶需要基於智能合約。

NEAR 基於這點考量,選擇了一條可以兼容高安全性和高易用性的方式。在 NEAR 中,每個帳戶默認是基於智能合約,並且託管錢包由 NEAR 提供。最終,用戶可以通過使用託管錢包開始與區塊鏈交互,然後在任何實例中更新帳戶的安全性,方法是在本地創建一個新的密鑰對,並更新帳戶以使用這樣的密鑰對。若想更深入的瞭解 NEAR 的賬戶模型的原理,可以參考 這篇文章。

這種方法稱之爲 :“漸進式安全性”。隨着用戶對區塊鏈的瞭解和投入的增加,用戶會隨着時間的推移選擇從最高可用性和低安全性過渡到最高安全性和低可用性,然後再到 NEAR 所設計的高安全性和高可用性。

如果用戶相信漸進式安全性是一件好事,並且通過可信的方式來託管錢包是一種可行方法,那麼密鑰對自然就會消失。在最簡單的方法中,託管錢包將所有用戶的私鑰存儲在支持 NEAR 區塊鏈的託管數據庫中,併爲用戶提供自己的身份驗證層,因爲 NEAR 是相對去中心化的,它可以提供用戶使用 Facebook 登錄,谷歌登錄,或者只是使用舊的電子郵件和密碼選項。只有當用戶想要從使用託管錢包轉移到其他設備時,他們才需要正確地設置一個私鑰,並將其轉移到其他設備上。

有趣的是,使用基於智能合約的賬戶,轉賬過程本身可以更容易地完成,同時保持完全的安全性。而不是將私鑰傳輸到另一個設備通過一些不安全的通道 , 合約管理用戶帳戶可以有兩個調用方式 :“proposeNewSk”和“approveSk”。任何人都可以調用第一個方法 , 並添加一個新的私鑰提出了私鑰的帳戶列表 , 和“approveSk”只能被稱爲從一個現有的簽名私鑰的賬戶 , 並可以通過任何擬議中的私鑰的帳戶。通過這種方式,用戶可以在新設備上設置一個全新的密鑰對,從該設備提出新的私鑰,並從現有設備批准它。

!NEAR 的錢包設計以及對非區塊鏈用戶的“漸進式安全性”

NEAR 鏈上紅包

目前,在 NEAR 錢包目前採用的是另一種非託管的實現方法。當新用戶首次接觸到 NEAR 的時候,大都情況下,賬戶所管理的財產金額比較小,比如李雷給韓梅梅發了一個包含 5NEAR 的 鏈上紅包。這種情況下,韓梅梅沒有必要搞懂複雜的公司鑰對的概念,並通過冷錢包、助記詞來對私鑰進行備份,完全可以選擇通過手機短信、或者郵件的方式來進行備份(當然如果韓梅梅對安全性有極致的追求,她還是可以選擇其他的助記詞備份方式的)。

而 NEAR 錢包就會將一個包含助記詞的錢包恢復鏈接(magic link)通過短信、或者郵件發給韓梅梅。韓梅梅如果更換設備,只需要該鏈接即可以恢復她的錢包,同時由於鏈接並沒有存在 NEAR 錢包的服務器上,所以用戶仍然掌管了自己的私鑰。當然,郵件和手機供應商並非完全安全,雖然概率很小,歷史上還是發生過用戶信息泄露的實踐。因此,當韓梅梅有了更多的資產以後,比如說 5000NEAR,她此時也可以選擇更換備份助記詞(私鑰)的方式,通過硬件錢包 Ledger 來保管自己的資產。而此時,NEAR 的錢包就會採用上文所說的方式,生成一個新的私鑰並刪除之前的私鑰,從而更爲靈活的完成安全性的升級。

有了上述安全概念和特定解決方案,NEAR 可以向用戶提供像今天在 web2 中那樣簡單的加載功能,並能夠在未來的任何時候升級至完整的區塊鏈安全性。在不影響用戶體驗的前提下,給用戶最好的安全保障。

!NEAR 的錢包設計以及對非區塊鏈用戶的“漸進式安全性”

!NEAR 的錢包設計以及對非區塊鏈用戶的“漸進式安全性”

!NEAR 的錢包設計以及對非區塊鏈用戶的“漸進式安全性”