• Forum has been upgraded, all links, images, etc are as they were. Please see Official Announcements for more information



Well-known member

For TAO'S V13.0 UPDATE guide, please click here: https://dashtalk.org/posts/25672/

For those I linked here who are from outside of the community: The Masternode network is a group of de-centralized nodes which aid in the process of PrivateSend Mixing. They are eligible to receive payments, as a reward! Anyone can set up a Masternode, the only pre-requisite is 1,000DASH. Understand, you are not committed to anything, you can quit and sell your DASHs at any time.


Hi, and welcome to you, who are interested in setting up a DASH Masternode! I have found Masternode ownership to be a very rewarding experience, teaching me about computers and different operating systems, as well as making me extra money for DASH that would just be sitting in my wallet anyway!


- 1,000 DASH
- The latest DASH wallet, which can always be found here: https://www.dash.org/wallets/
- Some USB thumb drives
- Two Windows programs (PuTTY: http://www.putty.org/, and WinSCP: http://winscp.net/eng/download.php#download2. Installation Package)
- A VULTR account, which can be found here: https://www.vultr.com/
- An ability to follow instructions to the letter

I'm TAO OF SATOSHI, and I will be your guide through this understandably intimidating set-up. You will be just fine, please take it slow, and be sure to thoroughly follow the instructions.

Be aware, you are setting up a Masternode on a remote server, and keeping your DASH on a local Windows PC. Your DASH are never in danger from the remote server, and I will show you how to run this Masternode with your wallet offline/cold so your DASH will not be in danger on your Windows PC either. Please practice safe computing and backup your wallet regularly, as I will show you how to do.

Happy Masternoding!

Any questions or comments feel free to post below. Remember, I am trying to make this guide as easy as possible, and would welcome feedback to that end.

All images in this thread are credited to WeirdGod, I used them from his guide for more advanced users.

If you value this guide and have found it easy to use, please show me some DASH love at:

*** XforTao5eRq9h9DUtSaZN2AvnQDcBxyFXR ***

(Tao's New Masternode Fund :D)


First, you will need to prepare the Windows PC and the DASH Wallet (dash-qt.exe) to support the Masternode setup.

Please bear in mind the following safety tips:

- Always do a backup of your WALLET.DAT if you have DASH on your computer.
- Think twice before deleting or overwriting anything, as there is no way back...Post here for help.
- Never copy WALLET.DAT when your wallet is running! Please use the BACKUP WALLET command from within your wallet instead.

This guide is going to assume that you have a clean PC with no DASH wallet installed. If you have installed a DASH wallet already, you are ahead of the game. Congratulations, you eager beaver! You get to skip the next line, only:

Download the latest Windows version of "dash-qt.exe" (the DASH wallet) as found on this page: https://www.dash.org/wallets/

----- Create new directory c:\dashcore.

Move the "dash-qt.exe" file to this new directory.

Fire up your new DASH wallet. Feel that engine purr! You may get a security pop up from your virus scanner, please override.

Now please go for a coffee, run to the grocery store, or do whatever you have to do while you wait for your wallet to fully sync with the network.

It should look like this, "out of sync" until it is fully caught up with the network.


Oh, you're back! I guess the wallet has finished syncing with the network! You are now ready for the next step:

On your Desktop, create a new notepad file.

Back in your wallet, click on TOOLS, then DEBUG CONSOLE.


You will find the command line at the bottom of the console.

Enter the following command: "masternode genkey" and press ENTER.

You will see a long string of numbers and letters.

Please copy/paste this string to the new notepad file on your Desktop. This is the key you will need to verify your Masternode later in the process.

Enter the following command: "getaccountaddress 0" and press ENTER.

This will generate your new Masternode's receiving address!

Please copy/paste this string to the notepad file, as well.

Please note: This address will be the one that you will send your 1,000DASH to, and the one where all future payments will go.

Congratulations, you are getting closer. Still lots to go through, so bear with me!

Once you have copy/pasted these items into your notepad file, you are finished with the Console. You may now close it, and return to the Overview screen.

A visual of the last step:


Important safety procedure time!

Begin securing your wallet by clicking on SETTINGS, ENCRYPT WALLET.

Enter a password, repeat it, and click OK.

Do not forget your password! Keep it somewhere safe, as you do not want to lose your DASHs!

I recommend that you type your password into your notepad file, and then cut/paste into the password field so you are sure of what your password will be. This is a big investment, and it pays to be sure!

You will see your DASH wallet may become unresponsive for several seconds, this is normal. Please do not hit any keys until your wallet has finished encrypting. Once your wallet has finished and closed, you are ready for the next security step:

Re-run your wallet (dash-qt.exe) and immediately go to FILE, BACKUP WALLET.


Select the location where you want to store a copy of your WALLET.DAT, and backup your wallet.

Please note: I recommend backing up your wallet to several USBs to keep in different locations

I can't stress this enough: BACKUP regularly! You never know with hard drives these days!

Financing your Masternode (depositing 1,000DASH to your "0" address):

Please check your wallet Overview screen. If you see that the big button under PrivateSend says "Stop PrivateSend Mixing", please click on it to disable PrivateSend. If you see that the button says "Start PrivateSend Mixing", you are good to go to the next step:

From wherever you currently hold your 1,000DASH (exchange, another DASH wallet, even a different address in the same wallet), please send your DASHs to your new "0" Masternode receiving address in your wallet. Make sure the "PrivateSend" checkbox is unchecked.
IMPORTANT: You must send EXACTLY 1,000DASH to this address, no more, no less, to be eligible to run a Masternode! (VIN 1,000)

Once you have initiated the transaction, you must wait for 15 confirmations so your address is eligible to be associated with your new Masternode. This usually takes about 40 minutes on average.

This time, you're lucky however, you don't have to wait! You can let the DASH blockchain do it's thing while you move on to the next post:
Last edited:
You are now ready to configure your Linux VPS! I will guide you thoroughly through this process, so stop sweating! You will be fine.

Remember the VULTR account I told you to create above? We will need it now. If you have not created this account, tsk, tsk, pay attention! See the post above under "What you will need" for directions.

See this testimonial by WeirdGod:

"For Linux server, I am using VULTR. Why VULTR instead of Amazon EC2? In short: simpler, cheaper, better. In detail: Vultr is awesome new self-provisioning, budget, virtual private server (VPS) provider. Built upon infrastructure of gameservers.com, they offer 12+ locations around the globe, many server/OS configurations all with fast SSD drives...

VPS can be obtained from $5/month (charged hourly at $0.007/hour) - making it 3x cheaper than Amazon EC2 where t1.micro starts at $0.02/hour. Additionally, currently they have 2 for 1 deposit bonus! So, deposit $10, and get $20 of credits - enough to run your VPS for 4 months!

I used many VPS providers (including DigitalOcean and Amazon), and I prefer VULTR, because it has clean interface and great features (snapshots, own OS installation from ISO image, windows instances...). I am impressed with them, and so was everyone who tried them."

I am also using this VPS provider for all of my nodes.

Please login to your newly created VULTR account.

- Select Server Type: PERFORMANCE
- Select datacenter location: Your choice, the primary locations offer DDOS protection.
- Select OS: The latest Ubuntu 16.04 or higher (64 bit)
- Select Server Size: 1 CPU with 1024MB of RAM is the minimum spec for a Masternode.


It will take 30 seconds for your new server to come online. Click MY SERVERS, and if you see your new VPS's IP and a MANAGE button, you are good to enter your VPS's main page.

In your VPS's main page, make a note of the initial password.

You will see a VIEW CONSOLE button. Please click this to interface with your VPS. Please note, for freshly installed servers, you will see the installation progress in the CONSOLE window until your OS is finished installing. When you see a command prompt, you are ready for the next step:



I'm not going to lie, you're doing great so far! Let's continue.

Login to your freshly-made VPS using the information provided in your VPS's main page (login as "root", and use the supplied initial password).

Once logged in, the first thing you will need to do is change ROOT's ;) password. ROOT ;) is the administrative default user that comes with your VPS.

To change ROOT's ;) password, enter the following command (you must always hit ENTER after all commands):

passwd root

You will need to create a new password, and repeat the new password.

Next you will need to create a friendlier, more personal user. Sorry, ROOT! :sad: Please enter the following commands:



You will see prompts for information, this is not necessary, just keep hitting enter and then Y to get to the command prompt again.

So now you have 2 users, ROOT ;) and new user, hopefully with different passwords....

Now you may bid farewell to ROOT for now, :sad:, by closing the CONSOLE. Please stay logged into your VULTR account, though.

You will now need to fire up the PuTTY program I told you to download and install under "What you will need" above.

With PuTTY, login to your VPS using it's IP which can be found in your VULTR account under MY SERVERS, and your new user login information you created in the previous step.

Once you see a command prompt, you're going to visit good old ROOT again, ;), by entering the following command:

su -

Enter ROOT's ;) password which you created before.

Security is important on this side too, so you must now secure your VPS.
(Updated: Cheers thelonecrouton!)

Enter the following commands:

apt-get update

You will see a lot of things happening, just wait for them to stop.

apt-get install ufw

Enter the following commands EXACTLY (in this order) to set up your firewall:
Please note: Make sure you enter the code in this order! If you do not, the program will not work! If need be you can disable your firewall by entering (as root;)): ufw disable.

ufw allow ssh/tcp

ufw limit ssh/tcp ---this command limits SSH connections to 6 every 30 seconds for greater security---

ufw allow 9999/tcp

ufw logging on

ufw enable

Check your firewall's status by entering the following command:

ufw status

You will see a message saying that your ufw status is active and will activate upon reboot as well.

Congratulations, you now have a firewall!

Please note, this is a minimum security procedure, and will be fine for the short term. Long term, you may want to further harden the server. It is recommended you read the following excellent "El Presidente" Chaeplin’s thread, and also some guides below, which also describe security settings:


By now, you are really rolling with this Linux OS, aren't you! And you were worried? This is a piece of cake! Moving on....

Enter the command "exit" to ditch poor ROOT again, :sad:, and return to your newly created user.

Leave PuTTY running, but continue to the next step:

Enter the dashd......

You are now ready to download and install "dashd" and "dash-cli" on your VPS. "dashd" is the beating heart of your masternode. It holds all the nuts and bolts that make your masternode tick.

"Geez, Tao, you like to talk a lot, don't you? Let's get on with it...."

Visit DASH.ORG with this link https://www.dash.org/wallets/, and download the latest Linux .tgz file.

Extract the file using whatever extractor program you use to wherever you want on your PC.

Locate the beating heart "dashd" and "dash-cli" by clicking on the extracted Linux file, and navigating to BIN, 64, dashd/dash-cli.

Copy and paste these two files to your desktop.

You will now need the second downloaded program from the "What you will need" section, WinSCP!

Please note, WinSCP is what us dummies use as a liaison between your Windows PC and your Linux VPS. You will need this program every time you would like to transfer the latest dashd from DASH.ORG to your VPS from your Windows PC.

Fire up WinSCP. Login to your VPS using your IP and user information, the same as PuTTY.

You will see on the left is your Windows PC, and on the right your Linux VPS.

Above your VPS on the right, you will see a folder icon with a star on the top right. Please click this icon to create a new folder.

Please name this folder .dashcore.

Double click your new .dashcore folder to open it.

On the left, navigate to your two files, and drag and drop them to your new folder on the VPS! It's that easy to transfer it!

You are now finished with WinSCP, and may now exit.

Going back to PuTTY....

You now need to make the files executable as well, like your firewall.

Enter the following commands:

cd .dashcore
chmod 777 ./dashd
chmod 777 ./dash-cli

Your "dashd" will be ready to serve it's purpose as the beating heart of your Masternode!

You are not going to start it just yet however...

Again, leave PuTTY running.

Back on your PC....

You now need to create a customized .dashcore/dash.conf file.

Open a new notepad file. We will go back to the first one later.

Copy/paste the following information into your new notepad file.


Customize this file by replacing the four fields in XXXXXXXXXXXXX.

Please note: rpcuser and rpcpassword can be anything, but it cannot have any special characters such as $,#,!, only letters and/or numbers. The masternode privkey is the one that you generated in your wallet and copied to your notepad file earlier, and externalip is your VPS's IP.

Once you have properly customized this file, please copy it.

Continue on to the next post! :D
Last edited:
OK, we are almost done. Sorry for the interruption, I have a character limit to respect...Moving on!

Where were we? Oh yes, I remember.

Back to PuTTY....

You are now going to need a program called "Joe's Own Editor". This is a Linux editor which will help you create and edit files in your VPS.

To install "Joe's Own Editor", enter the following commands:

su - (to visit ROOT ;) again)

apt-get install joe

Return to your personalized user by entering:


Excellent! Joe :cool: will be your hired gun to help you conquer this Masternode beast!

You will need Joe :cool: to help you place your customized .dashcore/dash.conf file into it's place on your VPS. Enter the following command:

joe .dashcore/dash.conf

You will see a blank window with .dashcore/dash.conf at the top.

Please paste your customized, copied file into Joe's :cool: window.

Save and exit your .dash/dash.conf file by using the following keys:


For added security, it is recommended to make this file "Read Only" so no one can change it:

chmod 444 .dashcore/dash.conf

You are now ready to start the beating heart....

Run your dashd daemon:

cd .dashcore

You will see the message "Dash Server Starting". Let it sync while you move on to the next step.

Back on your Windows PC, there is one more thing you need to do....

Remember the dash.conf file you and Joe :cool: created on your VPS? You now need to create a masternode.conf file on your Windows PC, to link with it.

We'll now use the first notepad file you created at the beginning.

The masternode.conf file needs to have the following information:

LABEL: A one word name you make up to call your node (ex. MN1)
MN IP : PORT: Your masternode VPS's IP, and the port is always 9999.
MASTERNODEPRIVKEY: This is the result of your "masternode genkey" from earlier.
TRANSACTION HASH: The collateral tx. hash from the 1000DASH deposit.
INDEX: The Index is always 0 or 1.

The MN IP and MASTERNODEPRIVKEY should already be in your notepad file, and the LABEL you make up yourself, so you just need to find out the TRANSACTION HASH and INDEX. To get your transaction hash and index, open your wallet and go to TOOLS=>DEBUG CONSOLE.

On the command line, enter "masternode outputs".

You will get a string that looks like this:
"06e38868bb8f9958e34d5155437d009b72dff33fc28874c87fd42e51c0f74fdb" : "0",

The long string is your transaction hash, and the last number is the index. You now have all the information you need.

The masternode.conf must look like this (no spaces between MN IP and PORT):


MN1 XrxSr3fXpX3dZcU7CoiFuFWqeHYw83r28btCFfIHqf6zkMp1PZ4 06e38868bb8f9958e34d5155437d009b72dff33fc28874c87fd42e51c0f74fdb 0

Great! You now need to save this file in the same folder as your wallet.dat. If you didn't change it, this folder should be here: C:\users\YOURUSERNAME\AppData\Roaming\Dashcore. You may need to enable the "view hidden files" feature in your Windows Explorer to see this folder.

---- Please note, make sure that you save under file type "All files" as Windows will default to a text file. It must be saved as a .conf file in order to work. Please verify it is saved as a .conf file! ----

Please shut down and re-start your Dash Core QT wallet. This is so the program recognizes the masternode.conf and is ready for masternode activation.

You are so close....let's wrap it up on your VPS!

Run Joe again as root to give your personalized user sudo powers:

su - (to visit root ;) for the last time)

joe /etc/sudoers

In Joe's window, find the line that says the following:

root ALL=(ALL:ALL) ALL and make another line underneath it like this:

Control-K-X to save and exit to root.

exit (to go back to your personalized user who is now a sudoer and may perform the following task):

You must install Sentinel. Sentinel is a watchdog for your node which communicates to the network that your node is working properly.

step 1) install prerequisites

sudo apt-get update
sudo apt-get install -y git python-virtualenv

step 2) If you are not already there, navigate to your .dashcore folder

cd .dashcore

step 2) clone sentinel, switch to the sentinel directory

git clone https://github.com/dashpay/sentinel.git
cd sentinel

step 3) create virtual python environment

virtualenv venv

(if this command fails try installing this package:)

sudo apt-get install -y virtualenv

step 4) install sentinel dependencies

venv/bin/pip install -r requirements.txt

step 5) test sentinel is alive and talking to the still sync'ing wallet

venv/bin/python bin/sentinel.py

You should see: "dashd not synced with network! Awaiting full sync before running Sentinel."
This is exactly what we want to see at this stage

step 6) wait until the reindex has complete and the wallet has sync'd

cd .. (you should now be back in .dashcore)
./dash-cli mnsync status

This is what you're waiting to see:

AssetId 999, all trues, one false, and a FINISHED. Keep issuing ./dash-cli mnsync status until it looks like this:

"AssetID": 999,
"Attempt": 0,
"IsBlockchainSynced": true,
"IsMasternodeListSynced": true,
"IsWinnersListSynced": true,
"IsSynced": true,
"IsFailed": false

At this point, your remote masternode is synchronized and chatting with the network
but is not accepted as a masternode because it hasn't been introduced to the network
by your collateral.

Step 7) You may now start your masternode! Go back to your local wallet, open the debug console, and run these commands (LABEL is the name you used for your MN in the masternode.conf):

walletpassphrase <YOURPASSPHRASE> 120
masternode start-alias <LABEL>

to (hopefully :)) start your masternode.

step 8) test sentinel has nothing to say

You're needed back in Sentinel directory! :D

cd sentinel

At this point, running

venv/bin/python bin/sentinel.py

should return nothing but silence. This is how you know it's working, and your masternode is working.

step 9) create a crontab entry to wake sentinel every five minutes

crontab -e

Choose Joe as your editor. Add this line to the end of the file.

* * * * * cd /home/YOURUSERNAME/.dashcore/sentinel && ./venv/bin/python bin/sentinel.py 2>&1 >> sentinel-cron.log

Make sure you:
1) Change USERNAME to your username.
2) Hit enter to create another line at the end after this line, or the file will not work.

Press Control-K-X to save and exit.

step 10) check for start, try, try, again

cd ..

You should be back in .dashcore.

./dash-cli masternode debug

Did it work? You should see the message "successfully started masternode".

"Yes, Tao, you're a genius! Thanks for that exhaustive process, it was worth it!" :D

If not, you may have to re-send your masternode start.

to do it a second time, repeat step 7.

How about now?

"No, I will have to go retrace my steps, thanks for trying bud!" :(

Hopefully it was the former and not the latter. Congratulations!

Once you have confirmed your node is running, you are now free to shut down PuTTY, and your DASH wallet on your PC. That's it, you're done!:D :cool:

Your Masternode will keep on
PrivateSend Mixing and receiving payments, smooth as silk....


--------Now that you are a Masternode Jedi, I can teach you some tricks:

Dash Info and Masternode Monitoring websites:

There is a Dash Ninja site to monitor your Masternode for updates or issues:

https://www.dashninja.pl run by @elbereth.

This fellow Dasher runs this website on his own time. If you find the site useful, show him some DASH love as well. His address will be posted on the site.

Dash TV, by @pille, great for monitoring your masternode's value and expected monthly payment:


Simply follow the (=) with your masternode or regular addresses (each separated by a comma) and bookmark for later access.


With the way this Dev team innovates and churns out updates, you may also find this helpful in the future:



Withdrawing profits:

At some point in the future, you may want to send funds from your Masternode, but don't want to risk messing it up and having to start again. For this trick, please click here:



I don't seek fame, but I could use some DASH love here for Tao's New Masternode Fund, if you appreciated my work! Hmm? Nudge, nudge..

***XforTao5eRq9h9DUtSaZN2AvnQDcBxyFXR ***

Also, you may consider participating in the DASH TWITTER PR INITIATIVE. See my signature below for details.

Thank you for using my guide, and good luck in the future, fellow Dasher!

Tao Of Satoshi

Last edited:
Thanks for the great tutorial!
As I'm in the process of setting up my first masternode, I was wondering: how do you specify where the masternode payments go? Do you directly go to the same address that contains the initial 1000 DR?
Thanks for the great tutorial!
As I'm in the process of setting up my first masternode, I was wondering: how do you specify where the masternode payments go? Do you directly go to the same address that contains the initial 1000 DR?
Thanks! I'm glad you like it!

The payments will go to the Masternode receiving address. I don't think it is currently possible to change this. Good luck with your setup!

Q. "What gives, Tao? I don't have the slightest clue about this BLS stuff that comes with v13.0, I'm kind of freaking out!"

A. "You'll have to update your node with my guide, then! Welcome to life as a DASH Masternoder!"

Fear not, I will guide you through this relatively simple upgrade process as well.

What you will need:

- The latest Windows Dash wallet (dash-qt.exe)
- The latest Linux .tgz file package (32 or 64, depending on your VPS specs)

Both can be found here: https://www.dash.org/wallets/
- Your two Windows programs, PuTTY and WinSCP
- An ability to follow instructions

This process is really no sweat. Follow the directions closely.

Note: If Spork 15 is not active, and DIP003 masternode registration hasn't been enabled yet, please only perform step 1 of this 2-step procedure.

--- Step 1 (Upgrading your local and remote wallets to v0.13.0) ---

On your Windows PC (If your wallet is running, please stop it and wait 60 seconds before proceeding):

Navigate to your dash wallet folder.

In the folder, delete debug.log, and all .dat folders (EXCEPT WALLET.DAT!!!)

Move your freshly downloaded dash-qt.exe file to your wallet folder directory.

You may get an action prompt, please choose "Replace file in the destination"

Run the wallet.

Let the wallet sync, and move on to your remote VPS!

On your computer:

Extract the contents of your Linux .tgz file. Place the new dashd on your desktop.
If you left your old dashd file there from your original installation, replace this file as well, when prompted.

In your VPS, using PuTTY:

Using your VPS's IP address and login information, login to your VPS under your username.

Once logged in, you will see the command prompt.

Enter the following commands:

cd .dashcore
./dash-cli stop

Wait 60 seconds for your daemon to shut down. Run ps aux to see if it's still running. Continue when you no longer see dashd in the listing.

Remove the current dash daemon:

rm dashd

Now, we need to replace that deleted dashd with the shiny new, improved v13.0 version!

Time for our liaison, WinSCP:

Fire up WinSCP.

Login to your remote VPS. On the left, you will see your local computer, and on the right you will see your remote VPS.

On the right side, navigate to your /home/USERNAME folder. Delete all .dat files (EXCEPT WALLET.DAT) and debug.log.

On the left (your Windows PC), navigate to your dashd on your desktop, and drag/drop them to your .dashcore folder in your Linux VPS on the right.

I'm such a dummy, I love that move!

Exit and close WinSCP.

Back to PuTTY....

Make your new dashd file executable and active by entering the following command:

chmod 777 ./dashd

Now run your Dash daemon:


Now, you will need to update sentinel. Please navigate to your sentinel directory.

cd sentinel

Once there, please enter the following commands:

git checkout master
git pull

Your masternode and sentinel are updated to the newest version of Dash.

--- Step 2 (DIP003 Registering your masternode on the blockchain) ---
Remember, only perform these steps if DIP003 has been activated! If you're not sure, please ask in a Dash forum.

It seems intimidating, but you got through this before, and I will help get you through this again! Take a deep breath, and let's begin. First and foremost, open a notepad file on your desktop. You will need to use it quite a bit in this procedure.

Fire up your Windows local wallet. Once it's finished syncing, please open your Debug Console. We now will use this tool to acquire a public and private BLS key, two new Dash addresses, and perform some transactions to register your masternode on the blockchain.

We will start by acquiring a BLS keypair. This is required for the operator of the masternode, which is you! Please enter the following command:

bls generate

You will see two long strings of characters named secret and public.

"secret": "565950700d7bdc6a9dbc9963920bc756551b02de6e4711eff9ba6d4af59c0101",
"public": "01d2c43f022eeceaaf09532d84350feb49d7e72c183e56737c816076d0e803d4f86036bd4151160f5732ab4a461bd127"

Copy this output to your notepad file. (Please note, these keys are NOT stored by the Dash Core wallet so please ALSO keep them in a safe place, like you did with the "masternode genkey" output from the previous version.)

On to your remote VPS!

Now you need to add the BLS secret key to your masternode "dash.conf" file on your VPS. Logon to your remote VPS using PuTTY and your credentials.

cd .dashcore
joe dash.conf

Joe :cool: will help you to add a line to this file that will enable your masternode to watch the blockchain for relevant Pro*Tx transactions, and will cause it to start serving as a masternode when you finish the ProRegTx broadcast below.

Navigate to the bottom of the dash.conf file. Add the following line at the bottom. (Please note: Replace the example with your actual BLS secret key from above.)


Please press ENTER to ensure that there will be a blank line at the end of the file, then press CONTROL, K, X to exit.

Now, to activate the changes to the dash.conf, the daemon will need to be restarted.

./dash-cli stop
Wait 30 seconds

Back to your Dash Core wallet on Windows...

We now return to the Windows wallet to prepare the transactions needed to register your DIP003 masternode on the Dash network. You will need to have an owner address which will also serve as your proposal voting address. (Please note, it can't be your current collateral address.) We will acquire this now.

Save all the below outputs (in green) in your notepad file. (Please note, all outputs are examples, yours will be different). From the Debug Console, please enter the following command:



Now, you will need an address to receive the owner's masternode payouts. This address can be an existing address, or you can generate a new one here:



It's your option to generate and fund a third address (funding address) to pay the transaction fee for the necessary registration transactions.

Important: The private keys to the
owner address and the funding address must be in the wallet that's submitting the transaction to the network.

Before continuing, please make sure that you have an owner address, a reward payout address, and a funding address with Dash in it. (Please note, If you plan on letting someone else vote for you, have the Dash address they plan on voting with available as well.) Let's move on!

Please unlock your wallet:

walletpassphrase YOURPASSPHRASE 300

The first step in the registration transaction is to create a protx register_prepare command. This command uses the following syntax:

protx register_prepare collateralHash collateralIndex ipAndPort ownerKeyAddr
operatorPubKey votingKeyAddr operatorReward payoutAddress (feeSourceAddress)

Using your notepad file, prepare this command. Replace each item with your unique information as follows:
  • collateralHash: The txid of the 1,000 DASH collateral funding transaction.
  • collateralindex: The output index of the 1,000 DASH funding transaction.
  • ipAndPort: The IP address and port of your remote VPS (example:
  • ownerKeyAddr: Your owner address.
  • operatorPubKey: The BLS public key you generated above.
  • votingKeyAddr: Optional: Who will vote on proposals? If yourself, enter the owner address again. If someone else, enter their address here.
  • operatorReward: The percentage of the block reward allocated to the operator as payment. In most cases this will be 0, unless you have someone else operating your node.
  • payoutAddress: Your reward payout address.
  • feeSourceAddress: Your funding address.
Example of a completed and successful protx register_prepare command:

protx register prepare 2c499e3862e5aa5f220278f42f9dfac32566d50f1e70ae0585dd13290227fdc7 1 yc98KR6YQRo1qZVBhp2ZwuiNM7hcrMfGfz 01d2c43f022eeceaaf09532d84350feb49d7e72c183e56737c816076d0e803d4f86036bd4151160f5732ab4a461bd127 yc98KR6YQRo1qZVBhp2ZwuiNM7hcrMfGfz 0 ycBFJGv7V95aSs6XvMewFyp1AMngeRHBwy

"tx": "030001000191def1f8bb265861f92e9984ac25c5142ebeda44901334e304c447dad5adf6070000000000feffffff0121dff505000000001976a9149e2deda2452b57e999685cb7dabdd6f4c3937f0788ac00000000d1010000000000c7fd27022913dd8505ae701e0fd56625c3fa9d2ff47802225faae562389e492c0100000000000000000000000000ffff8c523b334e1fad8e6259e14db7d05431ef4333d94b70df1391c601d2c43f022eeceaaf09532d84350feb49d7e72c183e56737c816076d0e803d4f86036bd4151160f5732ab4a461bd127ad8e6259e14db7d05431ef4333d94b70df1391c600001976a914adf50b01774202a184a2c7150593442b89c212e788acf8d42b331ae7a29076b464e61fdbcfc0b13f611d3d7f88bbe066e6ebabdfab7700",
"collateralAddress": "yPd75LrstM268Sr4hD7RfQe5SHtn9UMSEG",
"signMessage": "ycBFJGv7V95aSs6XvMewFyp1AMngeRHBwy|0|yc98KR6YQRo1qZVBhp2ZwuiNM7hcrMfGfz|yc98KR6YQRo1qZVBhp2ZwuiNM7hcrMfGfz|54e34b8b996839c32f91e28a9e5806ec5ba5a1dadcffe47719f5b808219acf84"

If your output looks similar to this in green, congratulations, you successfully completed the protx register_prepare transaction! Please copy the output (in green) to your notepad file.

If not, please go back and carefully construct the command again.

We now have what we need (collateral address, signMessage, and tx) to move on to the next step, the signing of the ProRegTx transaction.

This command uses the following syntax:

signmessage address message

Using your notepad file, prepare this command. Replace each item with your unique information as follows:
  • address: Your collateral address.
  • message: The signMessage string.
Example of your completed ProRegTx signing command and successful signing:

signmessage yPd75LrstM268Sr4hD7RfQe5SHtn9UMSEG ycBFJGv7V95aSs6XvMewFyp1AMngeRHBwy|0|yc98KR6YQRo1qZVBhp2ZwuiNM7hcrMfGfz|yc98KR6YQRo1qZVBhp2ZwuiNM7hcrMfGfz|54e34b8b996839c32f91e28a9e5806ec5ba5a1dadcffe47719f5b808219acf84


If your output looks similar to this in green, congratulations, you have successfully signed the ProRegTX transaction! Please copy the output (in green) to your notepad file.

If not, please go back and carefully construct the command again.

THE FINAL STEP! You're so close, don't quit now! :D We now will submit this signed transaction to the network, which will register your deterministic masternode.

This command uses the following syntax:

protx register_submit tx signature

Using your notepad file, prepare this command. Replace each item with your unique information as follows:
  • tx: The super-long string of characters from the output of the protx register_prepare command above.
  • signature: The output from the signmessage command above.
Example of your completed and successful protx register_submit command:

protx register_submit 030001000191def1f8bb265861f92e9984ac25c5142ebeda44901334e304c447dad5adf6070000000000feffffff0121dff505000000001976a9149e2deda2452b57e999685cb7dabdd6f4c3937f0788ac00000000d1010000000000c7fd27022913dd8505ae701e0fd56625c3fa9d2ff47802225faae562389e492c0100000000000000000000000000ffff8c523b334e1fad8e6259e14db7d05431ef4333d94b70df1391c601d2c43f022eeceaaf09532d84350feb49d7e72c183e56737c816076d0e803d4f86036bd4151160f5732ab4a461bd127ad8e6259e14db7d05431ef4333d94b70df1391c600001976a914adf50b01774202a184a2c7150593442b89c212e788acf8d42b331ae7a29076b464e61fdbcfc0b13f611d3d7f88bbe066e6ebabdfab7700 IMf5P6WT60E+QcA5+ixors38umHuhTxx6TNHMsf9gLTIPcpilXkm1jDglMpK+JND0W3k/Z+NzEWUxvRy71NEDns=


If you see a string similar to this, it's time to celebrate! Your deterministic masternode is updated, pending the next mined block. You've done a great job! Treat yourself to something!
Running a masternode, you can afford it! :)

You have finished updating, and are all set.... until the next time!

I'll still be here to help you, until you no longer need it!

"Thanks again, Tao!"

If this guide was useful to you, please consider showing me some DASH love at this address:

*** XforTao5eRq9h9DUtSaZN2AvnQDcBxyFXR ***

Until we meet again,

Tao Of Satoshi
Last edited:
For updating the remote daemons, use the update script:

nano update.sh

echo "########### This script will update the Master Node"
sleep 5
IP=$(hostname -I)
wget $URL
tar xzvf $FILE
echo "########### Stopping the Master Node"
./darkcoind stop
sleep 7
rm darkcoind
cp $DIR/bin/$VERSION/darkcoind .
chmod 755 darkcoind
rm $FILE
rm -rf $DIR
rm .darkcoin/peers.dat
echo "########### Restarting the updated Master Node"
sleep 30
sleep 15
./darkcoind getinfo
sleep 20
echo "########### Master Node status - Active: 1, Inactive: 0"
./darkcoind masternode list | grep $IP

chmod 755 update.sh

Then to update:

./update.sh https://raw.githubusercontent.com/darkcoinproject/darkcoin-binaries/master/rc/darkcoin-

^^ or whatever is the latest release in *.tar.gz format.