Bitcoin: A Peer-to-Peer Electronic Cash System
-- Satoshi Nakamoto

In the beginning, there was bitcoin.[1]

All hail Satoshi! Now the whole world uses bitcoin for daily transactions that are quick, easy, and don't involve banks. Whether buying a Snickers bar or a fancy yacht, if it's cash, it's bitcoin.


Well, that was the plan, and it might've worked out that way. But after Satoshi left, and a generation or two of Keepers of the Source followed in his footsteps, a coup took place which remains to this day. While bitcoin became more unusable with increasing transaction times and very high fees, the small handful of developers that now had control of the source refused to evolve bitcoin in the direction that Satoshi’s vision spelled out. These so-called “small blockers” found it more important that bitcoin be “a store of value” rather than digital cash.

That was at least one of the reasons for a spate of forks to the code and the blockchain for a while. One of these resulted in the Dash project (after a few name changes) in 2014, “dash” meaning digital cash.


But there’s more to it than that. Yes, Dash took the path of Satoshi, giving us a digital cash today that typically takes less than one second for a transaction that costs much less than a penny.

But that’s just getting back to where bitcoin should have been the whole time.

Dash also added InstantSend. This is a feature that guarantees no double spending, even before the Dash blockchain confirms the transaction.[2] That happens in the one second or so that the transaction takes. (Dash blocktime is 2.5 minutes) That’s what makes merchants confident in accepting the currency, where bitcoin needs up to ten minutes to get a confirmation (unless it’s in one of its high latency phases, or the merchant wants two or three or more confirmations, as some do); in extremis, a bitcoin transaction can take hours or days to get its first confirmation. No merchant wants to be at risk for that amount of time, and you don't want to be standing at the cash register while you wait. With InstantSend, there's no wait and no worry about chargebacks.

This change is enabled through the existence of Dash masternodes. These are servers that form part of the ecosystem, separate from the miners that produce blocks of transactions (as with Bitcoin). Masternodes enable InstantSend, as well as providing other services, including CoinJoin and governance. In return for providing these services, masternodes receive a portion of the block reward (like miners do, but less) and also have the right to vote on proposals for changes to the ecosystem. Such proposals also include ideas to spend Dash from the treasury on code development and other work on behalf of Dash. The treasury is also funded from a portion of the block reward.
Note that while one must put up collateral (1000 Dash) in order to run a masternode, anybody can run a miner. (That collateral is not locked up; the owner can spend it whenever he might choose, but doing so removes the masternode from the network.)

Always remembering that the raison d'être of Dash is to function as cash, instant transaction finalization is a vital part of how it works. But it must also be easily spendable. The volunteers working on the ecosystem have been working tirelessly for years getting merchants to agree to accept Dash at their points of sale. But vastly more acceptance came about with the advent of services provisioning merchant gift cards in real time. It's as simple as what I did at Starbucks two hours ago: I ordered my coffee, the clerk said "That'll be $5.73". I opened my Dash wallet, went to the gift card app, selected Starbucks and entered that amount. In about two or three seconds, a Starbucks gift card appeared on the screen— coincidentally having that exact amount left on it —which was accepted by the scanner at the register, which is used to scanning Starbucks mobile apps all day. Surprising to me when I was introduced to this, those gift cards are purchased by the gift card provider from the merchant at a discount, so I actually only paid $5.13 (in Dash equivalent) unbeknownst to the clerk. And if all else fails (for example, at a mom-and-pop trinket shop), you can also buy a one-time VISA card loaded with the purchase amount.

I've seen one slight drawback to this gift card scheme: a while ago I paid with Dash at Chipotle but didn't notice that the clerk had included the amount for the next customer in line along with mine. (My bad for not realizing instantly that my burrito doesn't cost twenty five dollars ... yet.) The gift card that had paid the bill wasn't able to accept a credit for the difference, and after trying heroically, the manager finally gave me the refund in cash dollars.

But there are still more use cases that cash should be able to handle. For example, I might want to repay my friend for my part of the lunch bill that he paid. Now cryptocurrencies have some very unfriendly aspects to this. Generally I would need for my wallet to see his wallet displaying the address to send to (usually in the form of a QR code). Okay, he is sitting right next to me, after all. But that's a special case, and he might not have his phone with him. And even if I've sent him money in the past, these wallets generally create a brand new address every time they want to receive money; I don't want to try to (dig out and) reuse that address I used last year. What I want is to say "Send this money to Luke" and he would receive it.

Use cases like this (i.e., registering usernames in a safe manner) are handled by a new part of the ecosystem called Evolution, which has a separate set of masternodes ("evonodes") handling them. Evonodes are also masternodes, but with more functionality. (Collateral for an evonode is 4000 Dash.) Evonodes will take on new duties as the ecosystem grows.

[1] Well, technically it was preceded by centuries of use of gold and national currencies as money, but really, they don't even count.

[2] "Double spends" is one of the problems that bitcoin was invented to solve. In the absence of a third party (for example, the bank that issued your credit card), it was possible for earlier digital currencies to be spent at Merchant 1 and then again next door at Merchant 2. The bank tries to prevent that, and every merchant relies on them to do so. With bitcoin and others, this assurance is provided by "confirmations", but they take a while to come, and even at that, that assurance isn't absolute but gains credence with each subsequent block added to the blockchain (each of which takes more time).