錢包功能是eos的核心功能之一,幾乎所有Dapp都需要使用錢包登入成功才能進行操作,甚至可以說錢包是所有Dapp的入口。
首先我們大概瞄一眼,eos錢包的有哪些操作,主要包括:建立、開啟、鎖定、解鎖、匯入、列出所有錢包等,接下來我們一一操作一波。

一、EOS錢包操作
首先我們需要先把節點啟動,輸入cd eos/build/programs/nodeos/
進入到nodeos目錄,然後執行./nodeos -e -p eosio --plugin eosio::chain_api_plugin --plugin eosio::history_api_plugin

ctrl+alt+t
重新開啟一個新的命令列視窗,進入到cleos目錄。

- 1.1 建立錢包
./cleos wallet create -n lgwallet --to-console
-n
是指定錢包名稱,--to-console
是列印到控制檯 這裡我建立了名為lgwallet
的錢包 最下面這一串數字PW5KZ2Zy7LsJajEsPcTCq6MzSZdETCiuDCfZq3rgEDDfuyt21ZLND
是該錢包的密碼,務必保管好,後面我們進行一些錢包操作的時候需要用到。
注意:生產環境千萬不要暴露該密碼給別人,否則別人拿到這個祕密就可以操作你的錢包了,到時候損失幾個億可別說浪哥沒提醒你哦。
- 1.2 開啟錢包
./cleos wallet open -n wallet1
這個命令是開啟一個已經存在的錢包,比如下面我建立wallet1
的時候,提示我這個錢包已經存在,但是我呼叫list
的時候,並沒有看到我的錢包,這時候我就需要先將該錢包開啟,然後再呼叫list
就可以出來了。

- 1.3 列出所有錢包
./cleos wallet list
這個命令比較簡單,我們直接看效果,其中帶*
代表未鎖定的錢包,我們剛剛建立的lgwallet
就是處於解鎖狀態,另外兩個default
和wallet1
都處於鎖定狀態。
注意:
list
只能列出所有已開啟的錢包,如果沒有列出已經存在的錢包,只需要呼叫1.2的指令,開啟該錢包即可。
-
1.4 鎖定錢包
./cleos wallet lock -n lgwallet
命令比較簡單,不廢話了,直接看效果。 -
1.5 解鎖錢包
./cleos wallet unlock -n lgwallet --password PW5KZ2Zy7LsJajEsPcTCq6MzSZdETCiuDCfZq3rgEDDfuyt21ZLND
其中lgwallet
從不帶*
變為帶*
代表解鎖成功。 -
1.6 匯入私鑰 主要分為兩步 第一步,生成公私鑰:
./cleos create key --to-console
Private key: 5KZ671DNWdP3PdCQLckCma3YyGXUR92ajM1nKHhJH54zf3isADY Public key: EOS78toDB64JtRpyeF7V35PPiBRLMcqWedd99dR3WDEApYkHhz2Tn

**注意:後期建立賬號的時候會關聯你的公私鑰,所以上面生成的公私鑰務必保管好,生產環境千萬不要暴露該金鑰給別人,否則別人可以隨意操縱你的賬號,一不小心損失幾個億。**具體用途,在建立賬號的時候我們再詳細討論,這裡先不展開講。
第二步,將私鑰匯入到錢包:
./cleos wallet import -n lgwallet --private-key 5KZ671DNWdP3PdCQLckCma3YyGXUR92ajM1nKHhJH54zf3isADY

-
1.7 檢視錢包的公鑰
./cleos wallet keys
該指令可以檢視所有已解鎖錢包的公鑰。EOS78toDB64JtRpyeF7V35PPiBRLMcqWedd99dR3WDEApYkHhz2Tn
是不是很熟悉的趕腳?沒錯,這就是我們剛匯入到lgwallet
錢包對應的公鑰。 -
1.8 檢視錢包的私鑰
./cleos wallet private_keys -n lgwallet --password PW5KZ2Zy7LsJajEsPcTCq6MzSZdETCiuDCfZq3rgEDDfuyt21ZLND
注意:進行該操作之前需要解鎖該錢包。

- 1.9 建立公私鑰並匯入錢包
./cleos wallet create_key -n wallet2
該操作相當於將1.6中的兩步合併為一步,即建立公私鑰並且匯入到該錢包。


- 1.10 移除已匯入到錢包的公私鑰
./cleos wallet remove_key EOS4wLeivKFF5U1LzDWLbfnx3DDtfuqznabzxRARgFJ6Z5aeqGahH -n wallet2 --password PW5JPuxjnYwd5z25A8E5wmZYxWbmXwtuJGg1iZc97fpfjTJhxGmar
這個指令看起來比較長,其實也比較簡單,主要就是三個引數,分別是該錢包對應的公鑰、錢包名以及錢包密碼。

- 1.11 鎖定所有錢包
./cleos wallet lock_all
這個沒啥好說的,直接看效果圖,一目瞭然。

二、總結
到目前為止,我們已經完成了錢包的所有操作,是不是很easy?下一講我們將講解“EOS賬號建立”,敬請期待。
獲取最新、最全的EOS開發教程請關注微信公眾號:區塊鏈浪潮之巔——一個集專案分析與區塊鏈技術開發於一體的公眾號。
