Native Currency Intialization

+2 votes
Hi,

I am trying to initialize some native currency for the root node while creating the chain. My use case is to initialize some currency for the admin at root node and also award some native currency to the miners when they start the mining process.

My params.dat file almost as default with changes only for Native Blockchain Currency is:

# Native blockchain currency (likely not required)

initial-block-reward = 80000000000      # Initial block mining reward in raw native currency units. (0 - 1000000000000000000)
first-block-reward = 500000000000000000 # Different mining reward for first block only, ignored if negative. (-1 - 1000000000000000000)
reward-halving-interval = 52560000      # Interval for halving of mining rewards, in blocks. (60 - 4294967295)
reward-spendable-delay = 1              # Delay before mining reward can be spent, in blocks. (1 - 100000)
minimum-per-output = 0                  # Minimum native currency per output (anti-dust), in raw units.
                                        # If set to -1, this is calculated from minimum-relay-fee. (-1 - 1000000000)
maximum-per-output = 100000000000000    # Maximum native currency per output, in raw units. (0 - 1000000000000000000)
minimum-relay-fee = 1000000             # Minimum transaction fee, per 1000 bytes, in raw units of native currency. (0 - 1000000000)
native-currency-multiple = 100000000    # Number of raw units of native currency per display unit. (0 - 1000000000)

I have set the initial-block-reward and first-block-reward but when I run "getinfo," it shows balance as zero.

getinfo result:

{
    "version" : "1.0.2",
    "nodeversion" : 10002901,
    "protocolversion" : 10009,
    "chainname" : "chain1",
    "description" : "MultiChain chain1",
    "protocol" : "multichain",
    "port" : 2887,
    "setupblocks" : 60,
    "nodeaddress" : "chain1@172.31.50.254:2887",
    "burnaddress" : "1XXXXXXWh4XXXXXXT9XXXXXXhTXXXXXXU2TVAU",
    "incomingpaused" : false,
    "miningpaused" : false,
    "walletversion" : 60000,
    "balance" : 0.00000000,
    "walletdbversion" : 2,
    "reindex" : false,
    "blocks" : 0,
    "timeoffset" : 0,
    "connections" : 0,
    "proxy" : "",
    "difficulty" : 0.00000006,
    "testnet" : false,
    "keypoololdest" : 1516192388,
    "keypoolsize" : 2,
    "paytxfee" : 0.00000000,
    "relayfee" : 0.01000000,
    "errors" : ""
}

Do I need to configure some other params? How should I get some native currency for master node admin?
asked Jan 18, 2018 by Mayank

1 Answer

0 votes

Thanks for posting the information. The problem is that the chain cannot start generating blocks, as evidenced by the fact that the blocks value from getinfo is still zero. The reason is that the first-block-reward is larger than the maximum-per-output setting, and therefore it's not possible to generate a valid first block. (The block reward is represented as a transaction output.) So you need to adjust those parameters on a new chain and try again.

answered Jan 19, 2018 by MultiChain
So maximum-per-output works for even the genesis block and the first-block-reward is also submitted as a transaction. Thank you for info. I will try again.
...