對於uos目前只能安裝商店的感慨,強制安裝除外
對於uos目前只能安裝商店的感慨,強制安裝除外
jie1018/ 瀏覽: 702/回覆:26 個人覺得,在軟體不足的情況下,更應該是系統支援,而不是讓使用者自己開啟開發模式UOS系列教程:賬戶、錢包、許可權更改
荒原蔥鬱 2019.04.02 11:24:48字數 1,068閱讀 481首先,假設您有一個UOS賬號,以及安裝了UOS節點程式的電腦。如果沒有
官方申請:請下載“優壹號” app
節點安裝(ubuntu 16.04):
1, wgetftp://tools.ulord.one/UOS_Mainnet.tar.gz
2,tar -zxvf~/UOS_Mainnet.tar.gz
3,chmod +x ~/uos/noduos ~/uos/cluos ~/uos/kuosd ~/uos/install.sh ~/uos/uninstall.sh ~/uos/mongodb/bin/mongod
4,sudo ~/uos/install.sh
uos的賬戶是由數字1-5,小寫字母a-z組成,普通使用者的長度為12位,小於12位的賬戶叫做“短號”,需要競拍獲得。
一:賬戶組成
我們使用命令列檢視一個UOS鏈上的任一賬戶,比如“aaaaaaaaaaaa”
cluos -u https://rpc3.uosio.org:8080 get account aaaaaaaaaaaa
created: 2019-01-29T08:13:31.000
permissions: owner 1: 1 UOS5RCcMUXDKNk9YQDq2CNxG68LF9zRYVn21o7s2TWb7BNFnJDzUk
active 1: 1 UOS7wHa9AjtNuys1PquLbEBGgnvLHig4YyspDwdW1wtJfWWMGBdVo
memory: quota: 7.37 KiB
used: 3.756 KiB
net bandwidth: staked: 0.1000 UOS (total stake delegated from account to self)delegated: 0.0000 UOS
(total staked delegated to account from others)
used: 129
bytesavailable: 67.11 MiB
limit: 67.11 MiB
cpu bandwidth:staked: 0.1000 UOS (total stake delegated from account to self)delegated: 0.0000 UOS
(total staked delegated to account from others)
used: 2.271 ms
available: 14.26 sec
limit: 14.26 sec
UOS balances:
liquid: 7.1000 UOS
staked: 0.2000 UOS
unstaking: 0.0000
UOStotal: 7.3000 UOS
producers:staked: 0.2000 UOS<not voted>
total: 0.0000 UOS
可以看到賬戶的許多資訊,包含:
1,賬戶"aaaaaaaaaaaa"建立與2019年1月29日
2,賬戶owner許可權的公鑰是“UOS5RCcMUXDKNk9YQDq2CNxG68LF9zRYVn21o7s2TWb7BNFnJDzUk”
3,賬戶active許可權的公鑰是“UOS7wHa9AjtNuys1PquLbEBGgnvLHig4YyspDwdW1wtJfWWMGBdVo” 4,賬戶的可用餘額為7.1UOS
5,賬戶的cpu以及net的抵押數量接下來,將用此賬號建立一個新的賬號,並且更改它的許可權。
二,錢包
命令列執行:
kuosd
大約5s,關閉此程序"ctrl+c",這時會在使用者目錄生成uosio-wallet資料夾,這個資料夾就是錢包資料夾。一個錢包資料夾裡頭可以包含多個錢包,現在我們在資料夾裡面建立兩個錢包,錢包的名稱分別為testera,testerb。
cluos wallet create -n testera --to-console
Creating wallet: testera Save password to use in the future to unlock this wallet. Without password imported keys will not be retrievable.
"PW5KMVW7A9LUnfxe1YPf2krHcRMbrVGBQZUzVHoBbke7rLkLZDbZB"
cluos wallet create -n testerb --to-console
Creating wallet: testerb Save password to use in the future to unlock this wallet. Without password imported keys will not be retrievable.
"PW5JCBNM89tUkfbimh5foFAf3XFnhRdffohK6wcDVYMCfh9jJ1gQH"
"-n"是名稱的意思,這樣,我們就在錢包資料夾建立了兩個錢包:”testera“和”testerb“。可以使用如下命令檢視:
cluos wallet listWallets:
[ "testera *" ,
"testerb *" ]
可以看到,錢包資料夾裡面已經包含名為”testera“和名為”testerb“的錢包了。這個時候,錢包資料夾裡面是沒有任何私鑰的,僅僅定義了兩個名稱而已。想要使用賬戶“aaaaaaaaaaaa”建立一個新的賬戶,必須把賬戶的私鑰匯入到錢包裡面,這樣程式才能使用錢包裡面私鑰授權“aaaaaaaaaaaa”建立賬戶的行為。“*”代表錢包未被鎖定。
將賬戶“aaaaaaaaaaaa”的owner許可權的私鑰匯入錢包testerb中,其中“xxxxxxx”代表私鑰
cluos wallet import -n testerb --private-key xxxxxxxx
檢視testerb錢包中收藏的公私鑰對:
cluos wallet private_keys -n testerb
然後輸入上文中testerb錢包的密碼:
PW5JCBNM89tUkfbimh5foFAf3XFnhRdffohK6wcDVYMCfh9jJ1gQH(可以貼上一次性輸入)
結果如下:
password: [[ "UOS5RCcMUXDKNk9YQDq2CNxG68LF9zRYVn21o7s2TWb7BNFnJDzUk", "xxxxxxxx" ]]
這樣我們就可以對賬號"aaaaaaaaaaaa"進行操作了。假如在某些過程中,錢包提示鎖定。可以用如下命令解鎖:
cluos wallet unlock -n testerb --password PW5JCBNM89tUkfbimh5foFAf3XFnhRdffohK6wcDVYMCfh9jJ1gQH
三,建立賬戶
先生成一個公私鑰對,然後用記事本儲存下來:
cluos create key --to-consolePrivate key: xxxxxxxxxxxxPublic key: UOS5AmeHzY6jreyPLKFaAj4hPSETSNvx2afC4K8w5pydPXDLkSVUE
然後搜遍腦袋想了一個名字“baodaotulong”,心想這個不錯,武林至尊,寶刀屠龍。然後在鏈上檢視是否賬號已經存在:
cluos -u https://rpc3.uosio.org:8080 get account baodaotulong
返回一個錯誤,確實不存在。。。。然後呼叫命令,因為上文中匯入的是owner公鑰,故簽名時使用的owner許可權,即@owner。owner許可權是向下包含active許可權的。
cluos -u https://rpc3.uosio.org:8080 system newaccount aaaaaaaaaaaa --transfer baodaotulong UOS5AmeHzY6jreyPLKFaAj4hPSETSNvx2afC4K8w5pydPXDLkSVUE UOS5AmeHzY6jreyPLKFaAj4hPSETSNvx2afC4K8w5pydPXDLkSVUE --stake-net "0.1000 UOS" --stake-cpu "0.1000 UOS" --buy-ram-kbytes 4 -p aaaaaaaaaaaa@owner
這條命令解釋為:aaaaaaaaaaaa建立一個baodaotulong的賬號,該賬號的owner公鑰為UOS5AmeHzY6jreyPLKFaAj4hPSETSNvx2afC4K8w5pydPXDLkSVUE,active公鑰為:UOS5AmeHzY6jreyPLKFaAj4hPSETSNvx2afC4K8w5pydPXDLkSVUE,aaaaaaaaaaaa出錢給其購買4K記憶體,抵押0.1UOS的cpu和net。
這樣,baodaotulong就建立成功了。要使用baodaotulong這個賬號,同樣也需要他的私鑰匯入錢包。
cluos wallet import -n testerb --private-key xxxxxxxx
同樣可以檢視testerb錢包,這樣testerb錢包中就擁有了兩個公私鑰對:
cluos wallet private_keys -n testerbpassword: [[ "UOS5AmeHzY6jreyPLKFaAj4hPSETSNvx2afC4K8w5pydPXDLkSVUE", "xxxxxxxx" ],[ "UOS5RCcMUXDKNk9YQDq2CNxG68LF9zRYVn21o7s2TWb7BNFnJDzUk", "xxxxxxxxx" ]]
接下來可以賣出一部分記憶體試試能否操作baodaotulong賬戶了:
cluos -u https://rpc3.uosio.org:8080 system sellram baodaotulong 500 -p baodaotulong@active
executed transaction: 4c55852428b3910411d51cccdf8dc3fbaae3c1c2d091b9583f30b740674fe475
112 bytes 1544 us
# uosio <= uosio::sellram {"account":"baodaotulong","bytes":500}# uosio.token <= uosio.token::transfer {"from":"uosio.ram","to":"baodaotulong","quantity":"1.3717 UOS","memo":"sell ram"}
# uosio.ram <= uosio.token::transfer {"from":"uosio.ram","to":"baodaotulong","quantity":"1.3717 UOS","memo":"sell ram"}
# baodaotulong <= uosio.token::transfer {"from":"uosio.ram","to":"baodaotulong","quantity":"1.3717 UOS","memo":"sell ram"}
# uosio.token <= uosio.token::transfer {"from":"baodaotulong","to":"uosio.ramfee","quantity":"0.0069 UOS","memo":"sell ram fee"}
# baodaotulong <= uosio.token::transfer {"from":"baodaotulong","to":"uosio.ramfee","quantity":"0.0069 UOS","memo":"sell ram fee"}
# uosio.ramfee <= uosio.token::transfer {"from":"baodaotulong","to":"uosio.ramfee","quantity":"0.0069 UOS","memo":"sell ram fee"}
# uosio <= uosio::payfee {"payer":"baodaotulong","net_usage":112,"virtule_net_limit":2097152000,"act_account":"uosio","act_na...warn 2019-03-29T08:57:45.730 thread-0 main.cpp:487
print_resuwarning: transaction executed locally, but may not be confirmed by the network yet
四,更改許可權
武俠迷小明出了1000個UOS想跟我購買這個baodaotulong的這個賬戶。小明向我提供了一個公鑰UOS5A4sYXU6SA5kyKjbu76r9xapgrzotjhLEgPSZzDzMBJpw1559Y。於是,我執行如下命令,更改了baodaotulong的許可權,這樣我就不再擁有baodaotulong的控制權了。
cluos -u https://rpc3.uosio.org:8080 set account permission baodaotulong active '{"threshold":1,"keys":[{"key":"UOS5A4sYXU6SA5kyKjbu76r9xapgrzotjhLEgPSZzDzMBJpw1559Y","weight":1}],"accounts":[]}' owner -p baodaotulong@owner
cluos -u https://rpc3.uosio.org:8080 set account permission baodaotulong owner '{"threshold":1,"keys":[{"key":"UOS5A4sYXU6SA5kyKjbu76r9xapgrzotjhLEgPSZzDzMBJpw1559Y","weight":1}],"accounts":[]}' -p baodaotulong@owner
小明查看了baodaotulong的賬戶:
cluos -u https://rpc3.uosio.org:8080 get account baodaotulong
created: 2019-03-29T08:46:56.000
permissions: owner 1: 1 UOS5A4sYXU6SA5kyKjbu76r9xapgrzotjhLEgPSZzDzMBJpw1559Y
active 1: 1 UOS5A4sYXU6SA5kyKjbu76r9xapgrzotjhLEgPSZzDzMBJpw1559Y
.....
小明發現賬戶的owner和active許可權都由自己提供的公鑰組成,愉快的通過優壹號轉給了我1000UOS
|