命令行钱包nknc操作指南

nknc(命令行钱包)操作指南

(对应nknd版本: v1.0)

nknc 是nknd的一个命令行钱包。

Contents

  1. 帮助
  2. 版本
  3. 区块链信息
    3.1 查询区块
    3.2 查询交易
    3.3 查询当前区块哈希
    3.4 查询当前总区块数
    3.5 查询节点连接信息
    3.6 查询节点状态
    3.7 查询节点邻居
    3.8 查询chord邻居信息
    3.9 查询节点版本
    3.10 查询余额
    3.11 查询当前nonce
  4. 资产管理
    4.1 转账
  5. 钱包
    5.1 创建钱包
    5.2 查询钱包
    5.3 更改密码

帮助

获取nknc的帮助。

命令:

./nknc --help

执行结果:

NAME:
   nknc - command line tool for blockchain

USAGE:
   nknc [global options] command [command options] [args]

VERSION:
   v1.0.0-alpha-80-g93ba

COMMANDS:
     asset      asset registration, issuance and transfer
     debug      blockchain node debugging
     info       show blockchain information
     name       name registration
     sigchain   signature chain operation
     subscribe  subscribe topic
     wallet     user wallet operation
     help, h    Shows a list of commands or help for one command

GLOBAL OPTIONS:
   --ip value     node's ip address (default: "localhost")
   --port value   node's RPC port (default: "30003")
   --help, -h     show help
   --version, -v  print the version

版本

获取nknc的版本信息。

命令:

./nknc --version

执行结果:

nknc version v1.0.0-alpha-80-g93ba

区块链信息

查询区块链的信息。

NAME:
   nknc info - show blockchain information

USAGE:
   nknc info [command options] [args]

DESCRIPTION:
   With nknc info, you could look up blocks, transactions, etc.

OPTIONS:
   --blockhash value, -b value  hash for querying a block
   --txhash value, -t value     hash for querying a transaction
   --latestblockhash            latest block hash
   --height value               block height for querying a block (default: -1)
   --blockcount, -c             block number in blockchain
   --connections                connection count
   --neighbor                   neighbor information of current node
   --ring                       chord ring information of current node
   --state, -s                  current node state
   --nodeversion, -v            version of connected remote node
   --balance value              balance of a address
   --nonce value                nonce of a address

查询区块

使用区块哈希或者区块高度获得区块。如果使用远程节点,需要在nknc后面使用*--ip and --port*参数。

命令:

./nknc info --blockhash 3320281d4030543abadda4584471ed5174eee3fa7d9152921cbc8917a60a2de6

执行结果:

{
    "jsonrpc": "2.0",
    "result": {
        "hash":"5f85d1286801c2f1129a02b0b19a3312f8113aaa073b5987346c59e27a12bdc6",
        "header":...
        "transactions":...
    },
    "id": 1
}

命令:

./nknc info --height 19125

执行结果:

{
    "jsonrpc": "2.0",
    "result": {
        "hash":"5f85d1286801c2f1129a02b0b19a3312f8113aaa073b5987346c59e27a12bdc6",
        "header":...
        "transactions":...
    },
    "id": 1
}

查询交易

使用交易哈希查询交易。如果使用远程节点,需要在nknc后面使用*--ip and --port*参数。

命令:

./nknc info --txhash dd54451ab43ac24b009a84af4005c0e5758bd8a5696e2da33d823695e20ec4e1

执行结果:

{
    "jsonrpc": "2.0",
    "result": {
        "hash":"dd54451ab43ac24b009a84af4005c0e5758bd8a5696e2da33d823695e20ec4e1",
        "txType":...
        "payloadData":...
        "attributes":...
        ...
    },
    "id": 1
}

查询当前区块哈希

获取当前的区块哈希。如果使用远程节点,需要在nknc后面使用*--ip and --port*参数。

命令:

./nknc info --latestblockhash

执行结果:

{
    "jsonrpc": "2.0",
    "result": {
        "hash": "3149000d7a0573915fea8f48773b19d12e812b059221cba746117befad26c09c",
		"height": 19168
    },
    "id": 1
}

查询当前总区块数

查询当前的区块总数。如果使用远程节点,需要在nknc后面使用*--ip and --port*参数。

命令:

./nknc info --latestblockhash

执行结果:

{
    "jsonrpc": "2.0",
    "result": 19173,
    "id": 1
}

查询节点连接信息

查询当前节点的连接信息。如果使用远程节点,需要在nknc后面使用*--ip and --port*参数。

命令:

./nknc info --connections

执行结果:

{
    "jsonrpc": "2.0",
    "result": 53,
    "id": 1
}

查询节点状态

查询当前节点的状态。如果使用远程节点,需要在nknc后面使用*--ip and --port*参数。

命令:

./nknc info --state

执行结果:

{
    "jsonrpc": "2.0",
    "result": {
		"id": "d7604de9aa22e2626a690fb0b3ec2c4ef4c790d73679e56ce0d5fa2f77befba0",
		"height": 19186,
		"currTimeStamp": 1555561990,
		"addr": ...
		"relayMessageCount": ...
		"syncState": ...
        ...
	}
    "id": 1
}

查询节点邻居

查询当前节点的邻居信息。如果使用远程节点,需要在nknc后面使用*--ip and --port*参数。

命令:

./nknc info --neighbor

执行结果:

{
    "jsonrpc": "2.0",
    "result": [{
        "id": "d25a3ce5376bbc8bd1b3fbb103cef4a4621ce99ade71093d3664494b49437116",
        "height": 19198,
        "addr": ...
        "syncState": ...
        "isOutbound": ...
        ...
	},
    ...]
    "id": 1
}

查询chord邻居信息

查询当前节点的chord环信息。如果使用远程节点,需要在nknc后面使用*--ip and --port*参数。

命令:

./nknc info --ring

执行结果:

{
    "jsonrpc": "2.0",
    "result": {
        "localNode": {...}
        "successors": [...]
        "predecessors": [...]
        "fingerTable": {...}
	},
    "id": 1
}

查询节点版本

查询当前节点的版本。如果使用远程节点,需要在nknc后面使用*--ip and --port*参数。

命令:

./nknc info --nodeversion

执行结果:

{
    "jsonrpc": "2.0",
    "result": "v1.0.0-alpha-82-g5774",
    "id": 1
}

查询余额

查询一个地址的余额。如果使用远程节点,需要在nknc后面使用*--ip and --port*参数。

命令:

./nknc info --balance NKNQ83xc8zQNEE6WBDKm7tZrLwoMwAq4c4jo

执行结果:

{
    "jsonrpc": "2.0",
    "result": {
        "amount": "0"
    },
    "id": 1
}

查询当前nonce

查询一个地址的转账nonce。请使用"nonceInTxPool"项的值作为nonce进行转账。如果使用远程节点,需要在nknc后面使用*--ip and --port*参数。

命令:

./nknc info --nonce NKNQ83xc8zQNEE6WBDKm7tZrLwoMwAq4c4jo

result:

{
    "jsonrpc": "2.0",
    "result": {
        "currentHeight": 5850,
		"nonce": 0,
		"nonceInTxPool": 0
    },
    "id": 1
}

资产管理

用于操作资产。

NAME:
   nknc asset - asset registration, issuance and transfer

USAGE:
   nknc asset [command options] [args]

DESCRIPTION:
   With nknc asset, you could control assert through transaction.

OPTIONS:
   --transfer, -t              transfer asset
   --wallet value, -w value    wallet name (default: "wallet.dat")
   --password value, -p value  wallet password
   --to value                  asset to whom
   --value value, -v value     asset amount
   --fee value, -f value       transaction fee
   --nonce value               nonce (default: 0)

转账

给其他地址转账。返回结果是交易哈希。转账的nonce。每次转前需要调用*./nknc wallet --list nonce命令来获取自己的nonce。如果使用远程节点,需要在nknc后面使用--ip and --port*参数。

命令:

./nknc asset --transfer -value 1  -to NKNBV71h5oUBjknMHPikPU7nraw9KtksWjtB --wallet wallet.dat --fee 0 --nonce 0

执行结果:

{
    "jsonrpc": "2.0",
    "result": "451a79a7e2e3aa0db0a856323575b7b371b098e6a3e6385b87dec5531314b3c3",
    "id": 1
}

钱包

用于操作钱包的命令。

NAME:
   nknc wallet - user wallet operation

USAGE:
   nknc wallet [command options] [args]

DESCRIPTION:
   With nknc wallet, you could control your asset.

OPTIONS:
   --create, -c                create wallet
   --list value, -l value      list wallet information [account, balance, verbose, nonce]
   --changepassword            change wallet password
   --reset                     reset wallet
   --name value, -n value      wallet name (default: "wallet.dat")
   --password value, -p value  wallet password

创建钱包

创建钱包。可以指定钱包名称。

命令:

./nknc wallet --name myWallet.json --create

执行结果:

Address                             Public Key
-------                             ----------
NKNBsm5t2eRj4ijSwM1Sw9jGtArTqCDun77Z  04c0dc08aa609929d4440b8690052f85b09ab24cba82a507e14ae3c5503694759e

查询钱包

查询钱包相关的信息。如果使用远程节点,需要在nknc后面使用*--ip and --port*参数。

命令:

./nknc wallet --list account

执行结果:

Address                             Public Key
-------                             ----------
NKNBsm5t2eRj4ijSwM1Sw9jGtArTqCDun77Z  04c0dc08aa609929d4440b8690052f85b09ab24cba82a507e14ae3c5503694759e

命令:

./nknc wallet --list balance

执行结果:

{
	"id": "1",
	"jsonrpc": "2.0",
	"result": {
		"amount": "0"
	}
}

命令:

./nknc wallet --list verbose 

执行结果:

Password:
Address                             Public Key
-------                             ----------
NKNZmZfWwYDhNGjFLZwJPQPKNf6o6kS45isW  044473fb05fc7a3c4c882150a02a505626a7531b1aeac15c5993835636cb452051

Private Key
-----------
...

命令:

./nknc wallet --list nonce

执行结果:

{
	"id": "1",
	"jsonrpc": "2.0",
	"result": {
        "currentHeight": 5850,
		"nonce": 0,
		"nonceInTxPool": 0

	}
}

更改密码

修改钱包密码。

命令:

./nknc wallet --name myWallet.dat --changepassword

执行结果:

passwrod changed
1 Like

请问查询当天或者某一天钱包的收益,应该用什么命令