每當有一個新的公鏈問世,用戶都需要創建一個新的錢包,抄下一組新的助記詞,並獲得一個新的地址,用戶似乎已經習慣了這樣糟糕的體驗,並且習以為常,覺得一條鏈一個地址,本不就該如此嗎?
今天 p-wallet(網址:ckb.pw)將讓用戶徹底改變這種傳統的觀念,在 p-wallet 上,他們需要的,只是任何一個他們常用的地址。面對更多的,還沒有進入區塊鏈領域的用戶,p-wallet 也有更棒的方案,p-wallet 是一款立足現在,面向未來的產品。首先再來給大家介紹一下 p-wallet 這款產品吧,p-wallet 是基於 pw-sdk 開發的一款網頁端錢包,目前在任意的以太坊錢包的 DApp 瀏覽器中,訪問 ckb.pw 網站,即可體驗用以太坊地址收發 CKB。未來 p-wallet 也會支持更多的公鏈,包括比特幣,EOS,Tron 等等,這也意味著未來用戶可以通過這些公鏈錢包的 DApp 瀏覽器,實現基於 CKB 的轉帳。
這不是跨鏈,也不是 DEX(去中心化交易所),大家轉帳和接收的都是真實的 CKB(當然目前還是測試網上的 CKB),所有的交易也都發生在 CKB 的鏈上。
因為目前的 p-wallet 已經支持了以太坊地址,在轉帳的時候,你可以在轉帳地址中,輸入以太坊地址,也可以輸入 CKB 地址,當然在未來你也可以在轉帳的時候輸入比特幣地址、EOS 地址、Tron 地址,而且根本不用考慮自己原本登陸的是什麼地址。
這聽上去有點不可思議,而且是令人疑惑的。
這並不符合我們以往的認知,曾經有無數的指導教程和交易所都告訴過我們,以太坊地址裡面只能轉入以太坊以及 ERC 代幣,你往裡面轉比特幣,你的比特幣可能就消失不見了。所有的公鏈之間,地址從來都是不互通的,我們在一個公鏈內,只能使用同樣的一套地址。
而在 CKB 中,在我們親眼所見了 p-wallet 之後,這樣的固有認知被完完全全打破了,我們開始迷惑,開始質疑,這還是我們所認識到的區塊鏈嗎?
區塊鏈被解構了,地址和籤名與區塊鏈本身是可以拆分開的,我們採用什麼樣的加密算法去進行籤名,我們選擇什麼樣的地址作為我們日常使用的地址,這些和區塊鏈的鏈式結構是無關的。
CKB Cell 模型和 RISC-V 虛擬機帶來了前所未有的靈活性和可擴展性,使得這一切都成了可能。
「地址是應用層的東西」—— Cipher Wang
p-wallet 最先支持的是以太坊地址,一是因為以太坊的生態是目前所有公鏈內最完善的,瀏覽器錢包 MetaMask,一大堆的手機錢包;二是因為以太坊有著最大的開發者生態和用戶群體,沒人能拒絕這兩點。
通過 p-wallet,在這個目前 CKB 基礎設施還不完善的時期:
目前還沒有支持 CKB 的硬體錢包,但真的是這樣嗎?
因為 p-wallet 已經打通了以太坊地址,所以 MetaMask 支持的 Ledger 和 Trezor 兩種硬體錢包,imToken 支持的 imkey 硬體錢包,都可以間接的成為 CKB 的硬體錢包。
你以為接入完現有的各大主流公鏈,p-wallet 的故事就結束了嗎?不,這才剛剛開始。
區塊鏈,目前還是非常非常小眾的,區塊鏈的實際用戶群體也並不大,上一步我們僅僅是實現了接入現有的區塊鏈生態,而下一步我們要考慮的是如何對接更大的那些從未接觸過區塊鏈的人群。
Libra 和 DCEP 毋庸置疑成了 2019 年最最熱門的話題。
Facebook 開發的 Libra 希望為全球數十億人提供一個簡單無國界的數字加密貨幣與金融基礎設施服務的區塊鏈平臺。Libra 幣將以區塊鏈技術為基礎,多種法幣資產儲備擔保,致力打造全球貨幣。
DCEP(Digital Currency Electronic Payment),是中國人民銀行未發行的法定數字貨幣,是數字貨幣的一種。當然我們目前尚未明確 DCEP 是否會採用區塊鏈技術,但在數字貨幣錢包應用上,使用了部分區塊鏈技術;根據央行 4 家機構顯示,區塊鏈技術將被用於數字貨幣錢包地址的管理、交易信息的監管以及數字票據的交易監管中。
所以 p-wallet 可能接入 Libra 或者 DCEP 的地址體系嗎?
完全可能。
如果說 Libra 和 DCEP 都還是尚待商定的事情,那麼未來 pw-sdk 通過支持 secp256r1,再配合一些現在網際網路通用的協議 Web-Crypto API 和 Web-Authn API 等,那麼我們將可以直接使用網際網路世界目前正在鋪設的技術設施。
這將會是什麼樣的呢?未來我們通過微信瀏覽器、Whatsapp 瀏覽器、chrome 瀏覽器等等,打開 ckb.pw 我們就能共享同一個由系統及鑰匙串管理的私鑰,這樣無論你用哪一個瀏覽器打開 ckb.pw 都將是同一個錢包,而且這將是手機系統級的、硬體級的密鑰管理。通過這樣的方式,區塊鏈的使用門檻將大大降低,而安全性方面將大大提升。
這些在以往的區塊鏈項目上,想都不敢想的東西,在 CKB 上都是可以實現的。而且這些內容的實現,不需要硬分叉,不需要經過任何人的同意,開發者自己就可以部署在 CKB 上面。
所以 p-wallet 究竟是如何實現的呢?
熟悉 CKB 的用戶應該都知道 Cell 模型中,主要有四個欄位:capacity,lock script,type script,data。和智能合約/腳本相關的主要是兩個欄位 lock script 和 type script。
而 p-wallet 其實只改動了其中的 lock script,因為以太坊籤名用的是和 CKB 一樣的 secp256k1,主要區別在於哈希函數,CKB 用的是 blake2b,而以太坊用的是 keccak256,因此只需要對 lock script 稍作改變,將用戶的以太坊地址作為參數傳給 lock script,就可以實現驗籤解鎖。
需要注意的是,從邏輯實現角度,lock script 可以實現的內容,type script 都可以做到,也就是說其實 type scirpt 比 lock script 更強大。
目前和資產所有權相關的內容,都主要是通過 lock script 實現,而其他的相關邏輯將主要通過 type script 去實現。
可以說,p-wallet 目前僅僅開發了 CKB 中很小的一部分,CKB 可以實現的功能還有很多很多。
一切才剛剛開始。