NOTE: Version of wallet in images maybe out-date please check on https://github.com/Bitcoin-Confidential/BitcoinC-Core/releases  for the latest version

0) On the VPS run Linux


Install and run Bitcoin Confidential wallet 


For simple you can use BC-Script


curl -sSL https://raw.githubusercontent.com/Bitcoin-Confidential/BC-Script/master/BC-Install-node.sh | bash


Copy the new stake address below this line 'Use this stake address on your local node to start staking.'


Go to next step 


In case you don't want to use BC-Script you can do it manual by run command bellow on your VPS console


wget https://github.com/Bitcoin-Confidential/BitcoinC-Core/releases/download/v1.0.3/bitcoinc-1.0.3-x86_64-linux-gnu.tar.gz

tar -xf bitcoinc-1.0.3-x86_64-linux-gnu.tar.gz

cd ~/bitcoinc-1.0.3/bin/

./bitcoincd -daemon

./bitcoinc-cli extkeyimportmaster "$(./bitcoinc-cli mnemonic new | grep mnemonic | sed -e 's/.*: "//' -e 's/",//')" 




enable staking with 


./bitcoinc-cli walletsettings stakingstatus true




and create the cold stake address with the command 


./bitcoinc-cli getnewstakeaddress


then copy the Stake address (Remote) from the output


I. Manual ColdStaking 


To ColdStake you will need to create 3 addresses: a Stake address (collateral), a ColdStake address, and another Stake address (Remote) on your node (VPS).


 1) On your wallet (PC), go to Staking tab > Addresses tab and enter a label then create one Stake address and one ColdStake address.


 2) To move your coins to the Staking address; under the Staking tab, go to Convert to Staking tab and enter the Stake address that you created in the Pay To field, then the amount you want to stake in the the Amount field , and click Send. 




Optional Step: now that you have the created the 3 addresses save them in text file and move on to next step.


3) Under the Staking tab, go to Activate ColdStaking tab, and paste the Stake address from your remote node in the Remote Stake Address field then copy  the ColdStake address, and paste  it in the ColdStake Address field.



 4) Finally, Enter the amount that you want to ColdStake in the Amount field and click Send. Congrats, You can now close your wallet. ColdStaking will begin after 225 confirmations and the rewards will be sent to your ColdStake address.


Please note With Manual ColdStaking you don't have to open local wallet until ColdStake activation profress are 100%



II. Automated ColdStaking ( you can use this method when you import private-key from smartcash and don't move the Bitcoin Confidential ==> not recommend)


Back to your wallet (PC): 

go to Staking tab ==> Status tab 

STAKING==>  Click START

COLD STAKING > click ENABLE, and paste the Stake address from your remote node then click OK to enable Automated ColdStaking. 






Please note you have to open local wallet until ColdStake activation progress are 100%. When it take so long please use Manual ColdStaking method




5) Checking status


I. On VPS


To show staking status on your VPS, run the following getstakinginfo


cd ~/bitcoinc-1.0.3/bin/

./bitcoinc-cli getstakinginfo

{

  "enabled": true,

  "staking": true,

  "errors": "",

...

}


The key is "enabled":true"


staking": could be true or false depending on if any of your inputs have 225 confirmations since their last staking reward.


check coldstaking block


  "coldstaking": {

    "active": true,

    "amount_in_coldstakeable_script": xxx.xxx,

    "estimated_weight": yyy.yyy,

    "percent_in_coldstakeable_script": 100.00,

    "coldstake_change_address": "",

    "estimated_rewardfrequency": 27283

  }


"active" is expected to be true on the VPS.

amount_in_coldstakeable_script:  are total coin on coldstake 

percent_in_coldstakeable_script: 100.00 mean you had completed stake all your coin 


"estimated_rewardfrequency" is a rough estimate on how long (in seconds) until you find a block, but could be over or underestimating highly.

In above example you can calculate the estimate time to receive reward by put 27283 here https://www.tools4noobs.com/online_tools/seconds_to_hh_mm_ss/

mean you will received reward on 7 hours, 34 minutes and 43 seconds


II. On Local Console


Help==> Debug windows ==> Console tab  Running getstakinginfo on your local console 



  "enabled": false,

 

  "staking": false,

 

  "errors": "",

 

  "percentyearreward": 5,

 

  "moneysupply": 7386228344.79384090,

 

  "currentblocksize": 0,

 

  "currentblocktx": 0,

 

  "pooledtx": 0,

 

  "difficulty": 120589171.2683232,

 

  "lastsearchtime": 0,

 

  "amount_in_stakeable_script": 0.00000000,

 

  "weight": 0,

 

  "netstakeweight": 1345063667.146267,

 

  "estimated_rewardfrequency": 0,

 

  "coldstaking": {

 

    "active": true,

 

    "amount_in_coldstakeable_script": xxx.xxx,

 

    "estimated_weight": yyy.yyy,

 

    "percent_in_coldstakeable_script": 100.00,

 

    "coldstake_change_address": "",

 

    "estimated_rewardfrequency": 4365

 

  }

 

}



"active" is expected to be true on the local wallet

amount_in_stakeable_script: are total coin in stake ( expected equal your total stake coin )

estimated_rewardfrequencyare estimated times to get reward ( in seconds)