- 是不是總是被GUI錢包的同步惹惱?
- 是不是擔心網頁錢包會拿走你的私鑰?
- 是不是想開發Web Dapp又感覺實現錢包簽名操作很無力、無奈?
沒錯!一個外掛錢包就能解決以上所有問題。
外掛錢包是什麼?
- 是一個能夠不用同步就能立即使用的錢包。
- 是一個完全受你掌控的錢包,除了你自己誰都不能偷走你的私鑰。
- 是一個能夠和web頁面通訊的錢包,你可以只專注你自己的業務邏輯。
外掛錢包的執行機制是什麼?(以下以exe簽名模式為例)
- 1. Web頁面構造指定的元素(如id為listAddrOut的select用於接收當前錢包的地址組)
- 2. 外掛前端contentscript.js注入web頁面,在開啟頁面時請求外掛錢包的background.js
- 3. 外掛錢包的background.js向exe簽名程式傳送交易資訊(如一個轉賬,一個合約呼叫)
- 4. exe簽名程式獲取交易資訊,將資訊展示給使用者
- 5. 使用者確認交易資訊,在exe輸入錢包密碼,執行交易
- 6. exe返回txid到外掛錢包的background.js
- 7. 外掛錢包的background.js返回txid到web頁面
外掛錢包有幾種簽名模式?
- 外掛呼叫exe簽名(如果你還不太相信外掛,可以用這種)
- 外掛內js簽名(如果你覺得裝簽名exe很麻煩,可以用這種)
- Neodun等硬體錢包簽名(如果你覺得PC對於黑客來說就是不帶門的,可以用這種)
使用複雜度 | 安全性 | |
exe簽名 | 安裝外掛外還需要安裝簽名程式並向登錄檔寫入一個鍵值 | 高 |
js簽名 | 僅安裝外掛 | 高 |
硬體錢包簽名 | 安裝外掛外還需要安裝錢包驅動程式並向登錄檔寫入一個鍵值 | 極高 |
外掛錢包如何保證我的安全?
- NEP6錢包檔案儲存在外掛內部。外掛的頁面是執行在本地瀏覽器內的,不與其他任何第三方的伺服器相關聯。
- 每次交易都在使用者確認交易資訊後,使用者輸入錢包密碼後才實際執行。
- 所有交易的構造在錢包內部完成,防止簽名請求方提供與實際交易不符的顯示資訊。
- 所有處理程式碼都是使用者端程式碼(本地瀏覽器內js、exe),能夠篡改或竊取資料的只有使用者本機
這僅僅是一個方案嗎?
NO!
Github
:https://github.com/NewEconoLab/NEL-BrowserPluginWallet
NEL外掛錢包(技術預覽<ChouLou>版)
PS
:這裡的餘額通過鏈上UTXO資料計算得到,不需要解密錢包
NNS域名轉賬與簽名確認
返回TXID
檢視這筆TX
轉賬成功
原文轉自NEL新經濟實驗室:mp.weixin.qq.com/s/XUJUo5TH-…