前言
在學習EOS開發之前,我們需要搞明白一些概念,尤其是Account(賬戶)和 Wallet (錢包)。
錢包、賬戶、公私鑰之間的關系
EOS與Ethereum在賬戶的設計上有很大不同,引入了Account賬戶, Wallet錢包, 錢包密碼, Key公私鑰, Permission權限等概念。
下面我們通過一張圖來理解一下它們之間的關系:

如上圖所示:
右邊是EOS Wallet錢包,里面只存放私鑰,而且錢包有一個獨立的密碼,需要輸入密碼才能解鎖錢包,讀取私鑰。
左邊是EOS Account賬戶,可以把它看成是一個保險箱,里面有EOS Token以及智能合約,而需要轉移里面的EOS Token(或者執行智能合約),我們需要錢包中對應的私鑰來解鎖這個保險箱。
EOS Dawn 3.0測試版本中創建一個賬戶的命令是:
cleos create account {創建者賬戶名} {新的賬戶名} 公鑰1 公鑰2
其中 {創建者賬戶名} 是為這個創建動作支付EOS的賬戶,公鑰1和公鑰2分別是兩個不同權限的密鑰對的公鑰。
所以把權限系統加上,圖就變成下面這個樣子:

一個保險柜有兩個開關,不過打開后可以進行操作的權限是不同的。2個私鑰可以存在一個錢包里,也可以如上圖所示存在不同的錢包里(由不同的人控制)。
權限
每個 Account 有三種權限: Owner、Active、Recovery。
Owner權限是賬戶的最高權限,可以修改其它權限。
Active權限默認可以進行轉賬等操作,但不能修改權限。
Recovery權限可以用于恢復賬戶使用權。
賬戶
每個保險箱有一個名字,也就是EOS賬戶名。
轉賬和智能合約等操作的執行都是在Account這個保險箱進行,所以賬戶名在EOS世界其實是以太坊的地址。
與以太坊不同,EOS的賬戶名不再是一串很長很長的地址,而是一個我們可以自定義的英文字母+數字(12345)+符號(.),最長12位,最短1位,全局唯一,先到先得,注冊費用還沒公布,但據最新的消息,長度不同,注冊需要花費的EOS也不同。