Управление кошельками

From wiki.cellframe.net
Jump to navigation Jump to search

Cellframe node >> Кошелёк >>

Управление кошельками


Команда создания нового кошелька, например с именем mywallet


$ ./cellframe-node-cli wallet new -w mywallet
wallet 'mywallet' successfully created
new address RpiDC8c1SxrT7RkXk7GjiGkoMhEBtFMAvT6LV8ec1CRZnFCQT2QfPUDbHd4uk3ZpEZq5DBx4FFG5VTGhYYSd5iarqgYQ2bydqDwaBUsz

После создания мы видим адрес кошелька: RpiDC8c1SxrT7RkXk7GjiGkoMhEBtFMAvT6LV8ec1CRZnFCQT2QfPUDbHd4uk3ZpEZq5DBx4FFG5VTGhYYSd5iarqgYQ2bydqDwaBUsz


Просмотр информации о кошельке


Если забыли адрес кошелька, посмотреть его можно командой

$ ./cellframe-node-cli wallet info -w mywallet -net cellframe-testnet
wallet: mywallet
addr: RpiDC8c1SxrT7RkXk7GjiGkoMhEBtFMAvT6LV8ec1CRZnFCQT2QfPUDbHd4uk3ZpEZq5DBx4FFG5VTGhYYSd5iarqgYQ2bydqDwaBUsz
balance: 0

Указав другую сеть, можно увидеть баланс кошелька в другой сети.


Получить список всех локальных кошельков


$ ./cellframe-node-cli wallet list

wallet: mywallet
addr: RpiDC8c1SxrT7RkXk7GjiGkoMhEBtFMAvT6LV8ec1CRZnFCQT2QfPUDbHd4uk3ZpEZq5DBx4FFG5VTGhYYSd5iarqgYQ2bydqDwaBUsz

wallet: my_wallet
addr: RpiDC8c1SxrTNbxwSzYuQaTyRnNxQ9As4KH1TgncmYXwdZPfMcsRFNJKKTXvVwA17TrFiU6GRyVcPJp986XmAH4mLrhQbRQsr7R1RfPE

wallet: w_first
addr: RpiDC8c1SxrTNbxwT2jHseDywjiJscXaqnC1CU9jNC7j6QgLESYyCSE4tCzszGeZaR9eyBYRocsJdWjLAGfdqoLktSsu2n8trhNe6skt


Эмиссия токенов на кошелёк


Существующий адрес кошелька вставляем в команду token_emit например так:

./cellframe-node-cli token_emit -net cellframe-testnet -chain_emission zerochain -chain_base_tx plasma -addr RpiDC8c1SxrT7RkXk7GjiGkoMhEBtFMAvT6LV8ec1CRZnFCQT2QfPUDbHd4uk3ZpEZq5DBx4FFG5VTGhYYSd5iarqgYQ2bydqDwaBUsz -token KELT -certs my-cert -emission_value 1000000000000000
datum emission 0x3395C602D87B334A3640BF6BE5E7A364B45ACA11DE1AF66DF6E00AFECA56BA23 is placed in datum pool 
datum tx 0x9FF134EC8ADE640B634AC6A38551840A6F3C09F8357245BD8A288CC59377C211 is placed in datum pool 

Предварительно нужно создать сертификат my-cert, как это cделать, можно посмотреть здесь. Также должнен существовать токен с именем KELT, пример создания токена можно посмотреть здесь

Как видно из результатов выполнения команды, токены попали в мемпул, далее их необходимо переместить в файлы или базу, в зависимости от чейна, делается это следующими командами:

$ ./cellframe-node-cli mempool_proc -net cellframe-testnet -chain plasma
cellframe-testnet.plasma: Found 1 records :
0x0x84CE025A4196A5B0079B90577686B47962FA7FD544AA1A91C3B12CC614D86928: type_id=DATUM_TX ts_create=Fri Aug 23 14:48:54 2019
 data_size=6201
New event created, removed datum 0x0x84CE025A4196A5B0079B90577686B47962FA7FD544AA1A91C3B12CC614D86928 from mempool 

$ ./cellframe-node-cli mempool_proc -net cellframe-testnet -chain zerochain
cellframe-testnet.zerochain: Found 1 records :
0x0xD0EAE909761DAC963F33E2709791A37C799D59A3A6C3AF4E2572F1B0C09EFFDF: type_id=DATUM_TOKEN_EMISSION ts_create=Fri Aug 23 14:48:54 2019
 data_size=6095
New event created, removed datum 0x0xD0EAE909761DAC963F33E2709791A37C799D59A3A6C3AF4E2572F1B0C09EFFDF from mempool 

Теперь проверяем наличие токенов на кошельке

./cellframe-node-cli wallet info -w mywallet -net cellframe-testnetwallet: mywallet
addr: RpiDC8c1SxrT7RkXk7GjiGkoMhEBtFMAvT6LV8ec1CRZnFCQT2QfPUDbHd4uk3ZpEZq5DBx4FFG5VTGhYYSd5iarqgYQ2bydqDwaBUsz
balance:
	 1000.000 (1000000000000000) KELT

В случае нескольких токенов, результат может будет следующий:

$ ./cellframe-node-cli wallet info -w mywallet -net cellframe-testnetwallet: mywallet
addr: RpiDC8c1SxrT7RkXk7GjiGkoMhEBtFMAvT6LV8ec1CRZnFCQT2QfPUDbHd4uk3ZpEZq5DBx4FFG5VTGhYYSd5iarqgYQ2bydqDwaBUsz
balance:
	 3000.000 (3000000000000000) KELT
	 100000.000 (100000000000000000) GOLD
	 20000.000 (20000000000000000) WOOD

Перевод токенов с одного кошелька на другой


./cellframe-node-cli tx_create net cellframe-testnet -from_wallet mywallet  -net cellframe-testnet -chain plasma -to_addr RpiDC8c1SxrTNbxwSzYuQaTyRnNxQ9As4KH1TgncmYXwdZPfMcsRFNJKKTXvVwA17TrFiU6GRyVcPJp986XmAH4mLrhQbRQsr7R1RfPE -token KELT -value 100000000 
transfer=Ok

Эта команда выполняет перевод с кошелька mywallet на другой кошелёк с адресом RpiDC8c1SxrTNbxwSzYuQaTyRnNxQ9As4KH1TgncmYXwdZPfMcsRFNJKKTXvVwA17TrFiU6GRyVcPJp986XmAH4mLrhQbRQsr7R1RfPE Операция также попадает в мемпул, и для применения перевода требуется выполнить следующую команду:

$ ./cellframe-node-cli mempool_proc -net cellframe-testnet -chain plasma
cellframe-testnet.plasma: Found 1 records :
0x0x3D584942538A965FCFF46EAECABE9A6BD3E8E6007DF89CD8066AAF321EB232E9: type_id=DATUM_TX ts_create=Fri Aug 23 16:23:31 2019
 data_size=6582