Dash: A Governance and Privacy Coin That’s Surprisingly Easy To Use
Dash is a governance coin previously known as DarkCoin. Its followers include Max Keiser and are so hardcore that many dismiss Dash as a pyramid scheme. But did anyone actually try using Dash? Andreas finds out.
Today I’m reviewing Dash, a governance/privacy focused coin. Dash forked off from Bitcoin with the name DarkCoin and later re-branded to Dash.
TL;DR: Dash is easy to use and has exciting governance/privacy features.
The Dash (DarkCoin) project launched January 2014 and was mostly ignored until the Bitcoin civil war made investors look to governance coins.
The DASH token has a market cap of $2.2 billion (1 DASH = $300). It processes around 5,000 transactions per day.
I usually write these reviews on the weekend. This one is different. The goals are many and time consuming. It took weeks to complete the review. Enjoy!
You can skip to the end of this 2,100 word review by searching this page for the word conclusion.
EDIT: Some HackerNews readers think gifs are used excessively. To remove them, type this in the browser console:
document.querySelectorAll(‘img[src$=”gif”]’).forEach(_ => _.parentNode.parentNode.remove())
Goals for the Review
- Compile and install Dash from source-code
- Download the Dash blockchain
- Buy DASH and send it to my node
- Install a mobile Dash wallet
- Send DASH to the mobile wallet
- Buy a product or service with DASH
- BONUS: Become a masternode
- BONUS: Vote with the masternode for a proposal
- BONUS: Create a proposal using the masternode
The Dash Landing Page
The Dash landing page has stock photos of business people and uses a “business blue” color. 😓
The Shake debit card looks interesting. It probably has low limits and high fees like all other cryptocurrency debit cards. Maybe I’ll look at it later. Or just go straight for the Misconduct Wine.
Compiling and installing Dash from source-code
I scroll to the bottom and find a link to the Github page.
The Dash Github Project
I notice a few things here. There are
13,337 commits. This reads as “elite” in leetspeak. I wonder if it’s a joke or accident.
The last commit to Dash was April 5th. That’s 172 days ago. I’ll see if there are other branches with more recent changes.
I look at the
v0.12.2.x branch was changed only 4 hours ago! The Dash project must be actively developed.
Downloading the Dash node source-code
I go back to the master (latest stable) branch on Github and look for instructions.
I don’t see any install instructions in the
README. I’ll look in the
INSTALL file asks me to look in the
I check out
Easy enough. I’ll use Amazon AWS to create a cloud computer.
I pick Ubuntu 16.04 as the operating system.
I choose a computer with 2 CPU cores and 8 GB ram. This will make compiling Dash from source-code and syncing the Dash blockchain fast.
My Linux machine is running. I go back to the Dash GitHub page to find a download link.
I copy the link and clone the project using
I realize I forgot to install the dependencies. I’ll do that now.
The dependencies install without any problems. 👍 Next I’ll build the Dash node binaries.
cd dash ./autogen.sh ./configure make make install
Building the Dash node from source-code takes around 20 minutes.
OBJECTIVE 1 SUCCESS!
Compile and install Dash from source-code
I start the Dash node.
The Dash node is downloading the blockchain. I’ll go have lunch. 🍔
The Dash blockchain is downloaded.
OBJECTIVE 2 SUCCESS!
Download the Dash blockchain
Buying DASH Tokens
To buy DASH tokens I need a wallet address. I’ll find one with terminal.
I forgot to set the RPC username and password in the Dash config.
Much better. I can now see my Dash address.
I use ShapeShift to buy a small amount of DASH like in my Monero review.
I check if the DASH has arrived…
OBJECTIVE 3 SUCCESS!
Buy DASH and send it to my node
Installing a mobile Dash wallet
The Dash website lists a few different Android wallets.
Dash Wallet by Hash Engineering has the most features listed. Jaxx is more generic and used mostly for Ethereum tokens.
I’ll have a look at the Dash Wallet’s GitHub while waiting for it to install on my phone.
Dash Wallet is written in a combination of Java, C, and C++. I’m not familiar with Android development. Perhaps this combination is normal.
The Dash Wallet source-code was last updated two weeks ago. I won’t look further at the code in this review.
After a few seconds the Dash Wallet is synced. This is normal for SPV wallets.
OBJECTIVE 4 SUCCESS!
Install a mobile Dash wallet
Next I’ll send DASH from my node to the mobile wallet. I open the address book to find my Dash receiving address.
Back in my Dash node I look through the
dash-cli help command list and notice a command called
OBJECTIVE 5 SUCCESS!
Send DASH to the mobile wallet
Buying something with DASH
I only have $30 left in my mobile Dash wallet. Stickers it is!
I find a Dash sticker, add it to the shopping cart, and check out.
I scan the QR code with my mobile Dash wallet.
The DASH is sent. I check back on the website.
OBJECTIVE 6 SUCCESS!
Buy a product or service with DASH
Becoming a Dash Masternode
Dash has a different incentive system than Bitcoin. Block rewards are split:
- 45% to miners (proof-of-work)
- 45% to masternodes (proof-of-stake-ish)
- 10% to Dash budget proposals
Running a Dash masternode requires having 1,000 DASH and keeping them in one address. Masternodes are used for instant/private transactions and governance. I haven’t read much about instant/private send.
To buy the 1,000 DASH I wrote a program called
kraken-minimal-trader. The trader program has a very basic recipe:
- Place an order to buy DASH with BTC at 0.25% less than the current best bid price
- Wait 3 seconds
- Cancel the order
- Go to step 1.
After around a week the program has bought enough DASH to become a masternode.
I don’t want to store the DASH in my Dash node. I look around in the Dash wiki and find a way to use my Trezor.
The first step is to have exactly 1,000 DASH in a separate account on my Trezor.
Most of the Trezor guide relates to setting up a Dash node with cloud hosting. I already did this for the previous part of the review and skip ahead.
Next I need the
dash-masternode-tool (DMT). I’ll run this on my laptop. The tool is written in Python.
I copy the
.app file to my
Applications folder and run it.
I test the RPC connection to my Dash node.
Next I see if DMT can reach my Trezor.
I copy in the address where the 1,000 DASH collateral is stored.
I click the the ➡️ and then the Lookup button. DMT finds the transaction hash and output index without me having to look it up.
I click the button to generate a new masternode private key. I guess this allows me to send instructions to my Dash node from my laptop.
dash.conf on my Dash node to add two lines.
I restart my Dash node. I monitor the status using dashman.
Maybe I need to wait a little bit.
I check again after a few minutes.
The status has changed to
MASTERNODE_SYNC_MNW. I don’t know what that means. I press the Start Masternode button.
I confirm that I want to sign a message on my Trezor. Dash Masternode Tool show a message saying a message has been broadcast.
I wait a few minutes.
I press the Get Status button in the Dash Masternode Tool.
I don’t know what
WATCHDOG_EXPIRED means. I read that the masternode must remain online to qualify for rewards. Perhaps my node is struggling to sync? I check the resource usage of my Dash node.
The Dash node is using a lot of CPU resources on the server. Perhaps my node is still syncing. I’ll check back later.
The status of my Dash node is now
NEW_START_REQUIRED. I restart the node.
I restart the Dash node and wait a few minutes.
dashman status reports everything in green.
OBJECTIVE 7 SUCCESS!
BONUS: Become a masternode
Making a Dash Budget Proposal
What can I do with a masternode? I read on dashmasternode.org for a few minutes.
Vote on and create budget proposal is what I want.
I click the Join DashCentral Now! button.
Registration seems straight forward.
I click on Add new masternode and fill in the funding address.
I’m stuck. Normally I would end the review at this point. I will make an exception for Dash and ask on a Slack.
I wait for the Slack invitation to show up in my Gmail inbox.
After 10 minutes the Slack invite email has not arrived.
I have an idea. Maybe
NEW_START_REQUIRED means I have to connect my Trezor and click the giant button again. I try that.
The new status in Dash Masternode Tool is
PRE_ENABLED. I don’t know what that means.
I wait for another 20 minutes.
And try again.
I check to see if it worked.
Yes! I click set privkeys and fill in my Masternode private key and a passphrase that’s used to encrypt my private key on their server.
I click unverified to verify the ownership of my Dash masternode.
I can’t follow these exact steps because I use a Trezor. I’ll sign with my Trezor.
I enter the signature on Dashcentral.
I click Verify ownership.
I click My Masternodes.
I don’t know what disabled means under Block. I click it.
I follow the instructions to install DashCentral push script on the same server as my Dash node. It’s a crontab job that runs a perl script. I’ve excluded these pretty boring steps.
Back at My Masternodes the status has changed:
Looks good. I click on Budget” in the menu.
I don’t really have an opinion on most of these proposals. I scroll down.
I’ll try to vote “Yes” on boosting the Dash Masternode Tool.
I click Vote YES and enter my passphrase.
My vote is showing as registered.
OBJECTIVE 8 SUCCESS!
BONUS: Vote with the masternode for a proposal
Creating a Dash budget proposal
I go to Budget on Dash Central.
And click Create proposal.
They recommend making a forum post first. I do that.
After a few days there’s not much feedback. I don’t know if that’s good or bad. I decide to post my proposal.
I complete the form and click Create Proposal.
A wallet command is shown.
I connect to my Dash node and paste in the command:
The output looks like a transaction hash,
I paste the transaction hash in the form and the screen changes before I can take a screenshot:
I wait for the fee transaction to confirm.
I paste the new command:
I click Submit proposal:
Nothing happens. Perhaps I’m done already?
I’ll see if my proposal shows up after an hour.
I check Dash Central’s list of proposals.
My proposal is there! I click the link.
And click Claim Proposal Ownership.
I’ll sign using the address I used to pay the fee so I won’t have to plug in my Trezor again.
I paste in the signature and press Claim.
Back in the proposal I’m able to edit the title and body.
I copy-paste the pre-proposal with some small modifications.
And press Save.
The proposal was changed.
OBJECTIVE 9 SUCCESS!
BONUS: Create a proposal using the masternode
Dash is very different from the other blockchain products I’ve reviewed. Installing and using the Dash software was easy.
The Dash masternode and budget proposal system is interesting. I’d be worried about the Spork centralization, where developers can seemingly change the coin rules, but that’s the case in every other coin anyway.
I’m surprised more people aren’t using Dash. My experiment is over, but I’ll keep my masternode running in the background and see how this thing develops.
I probably won’t become an active member of the Dash community just yet. I’ll be sure to check in on proposals every now and then.
I’ll keep the masternode running. And the Dash wallet installed on my phone too.
Good night, blockchainers.
About The Author
Follow me on Medium and Twitter for more reviews.
Are you making a blockchain product and want me to advise or review? I can be bought. Send me a paid message at https://21.co/berken/