EOS的帳號系統設計的很特別,不同於比特幣、乙太坊直接以公鑰地址當作帳號,EOS的帳號是可讀的,能夠與公私鑰分離,還可以做權限劃分。這有點像是Steemit的強化版。此外,因為這樣的設計,還有可能做到多人把控同一個帳號、多重簽名(eosio.msig)等。
當我們啟動創世塊以後,會包含一個最高權限帳號eosio。這個最高權限帳號在主網是由21個超級節點把控,每次要操作需要提案,並由超過15個超級節點同意,共同多重簽名才允予執行(有點議會制的味道),這和在說共識演算法DPoS類似。不過創世塊時,eosio的帳號是被「EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV」的私鑰把控,透過這樣一來就有bob這個帳號了。來透過cleos get account eosio
可以查看eosio帳號狀態。
看看是否建立成功:
created: 2018-06-01T12:00:00.000
privileged: true
permissions:
owner 1: 1 EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV
active 1: 1 EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV
memory:
quota: unlimited used: 2.66 KiB
net bandwidth:
used: unlimited
available: unlimited
limit: unlimited
cpu bandwidth:
used: unlimited
available: unlimited
limit: unlimited
memory、net bandwidth、cpu bandwidth之前有提到,之後在部署系統合約時也會說一下(但不會深入)。現在重點是,怎麼獲取最高權限控制權?
cleos wallet import --private-key 5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3
類似的,在解鎖錢包後,需要把私鑰「5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3」匯入錢包,如此就有eosio的控制權。
現在,可以配合昨天產生的祕鑰對,由最高權限帳號eosio,來建立新帳號:
cleos create account eos bob <PUBLIC KEY>
這樣一來就有bob這個帳號了。來透過cleos get account bob
看看是否建立成功。
EOS账户名称长度必须为12个字符,由小写字符和数字组成. 数字只能选用从1至5的五位数 字。
--- by EOSVibes
目前主網帳號名稱的申請還是比較嚴格的,必須12長度,不可多不可少(公開的測試網路也是一樣,只有本地網路可以隨便玩)。只能由小寫英文字母與0-5的數字組成。
在系統部署合約後,就要使用其他方式建立帳號,不過我們以後在說。