Dash

  • Ander Liu
tags: Blockchain

Basic info

Testnet Faucets

Arguments and commands

基本操作

$ ./dashd --daemon //Run in the background as a daemon and accept commands $ ./dash-cli <command> //Send command to Dash Core

Testnet

Options

option Description
txindex Maintain a full transaction index, used by the getrawtransaction rpc call (default: 1)
addressindex Maintain a full address index, used to query for the balance, txids and unspent outputs for addresses (default: 0)
timestampindex Maintain a timestamp index for block hashes, used to query blocks hashes by a range of timestamps (default: 0)
spentindex Maintain a full spent index, used to query the spending txid and input index for an outpoint (default: 0)

如果已經下好帳本,要新增 index 功能,要加上 reindex

Example

$ ./dashd --testnet --daemon --addressindex $ ./dash-cli --testnet <command>

查詢區塊高度

$ ./dash-cli (--testnet) getblockcount ( Returns the number of blocks in the longest blockchain. )
  • return:
142935

創建地址

$ ./dash-cli (--testnet) getnewaddress ( Returns a new Dash address for receiving payments. )
  • return (addr):
yfJ971rJSFQt2SfGWVJZdyX8Rdiv7jsjeg

查詢餘額

  1. 查特定地址餘額 (要開 addressindex 功能)
$ ./dash-cli (--testnet) getaddressbalance '{"addresses": ["address"]}' ( Returns the balance for an address(es) (requires addressindex to be enabled ).
  • return:
{ "balance": 8887859774, "received": 8887859774 }
  1. 查錢包餘額
$ ./dash-cli (--testnet) getbalance ( returns the server’s total available balance )
  • return:
88.87859774
  1. 查錢包裡地址餘額
$ ./dash-cli (--testnet) listaddressbalances ( Lists addresses of this wallet and their balances )
  • return:
{ "yN8saAJ5tzaVaahHHRHF4YHbwHvX3Dv7ix": 0.00000000, "yS6KfQfz4ygedPsjTZWbCRJiRj1R66TozY": 88.87859774 }

Transaction

Simple Spanding

$ ./dash-cli (--testnet) sendtoaddress "address" amount ( Send an amount to a given address. )
  • return (txid):
bbffc3......

Complex Raw Transaction

  1. 取得可用 txid
$ ./dash-cli (--testnet) listunspent ( Returns array of unspent transaction outputs )
  • return:
[ { "txid": "bbffc3......", "vout": 1, "address": "yS6KfQfz4ygedPsjTZWbCRJiRj1R66TozY", "amount": 88.87859774, ... }, ... ]
  1. 取得 key
$ ./dash-cli (--testnet) dumpprivkey "myaddress" ( Reveals the private key corresponding to 『address』. )
  • return (key):
cN93x2......
  1. create 交易
$ ./dash-cli (--testnet) createrawtransaction "[{\"txid\":\"mytxid\",\"vout\":n}, ...]" "{\"address\":amount, ...}" ( Create a transaction spending the given inputs and creating new outputs. )
  • return (hex):
0200000001ea9......

mytxid, n, address, amount 都要填
input 照著步驟1.得到的結果填
假設這筆 txid 有10塊錢,要給對方5塊錢,交易費為0.001,則 address 有兩筆,一筆填對方地址,amount 填5塊,另一筆填自己地址,amount 填4.999塊

  1. sign 交易
$ ./dash-cli (--testnet) signrawtransaction "hexstring" [] [\"privatekey\", ...] ( Sign inputs for raw transaction (serialized, hex-encoded). )
  • result (signedhex):
{ "hex": "0200000001ea9......", "complete": true }
  1. send 交易
$ ./dash-cli (--testnet) sendrawtransaction "signedhex" ( Submits raw transaction (serialized, hex-encoded) to local node and network. )
  • result (txid):
383045......

查詢交易結果

  1. 查看鍊上交易資訊
$ ./dash-cli (--testnet) gettransaction “txid“ ( Get detailed information about in-wallet transaction <txid> )
  • return:
{ "blockhash": "000000003adb2741881f8e9dc64d767b9b10318faa6cc54f52931574439223eb", ... }
  1. 利用 hash 值得到區塊
$ ./dash-cli (--testnet) getblock “blockhash” ( returns a string that is serialized, hex-encoded data for block 『hash』. )
  • return (block):
{ "height": 142932, ... }
  1. 利用 getblockcount 得到區塊高度
$ ./dash-cli (--testnet) getblockcount

Reference

Homepage