In 2015, Bitcoin developers Jake Yocom-Piatt and David Collins were getting frustrated with Bitcoin. The way they saw it, although Bitcoin started off as a decentralized system, over time, miners and a select group of developers had gained too much control over the protocol. In an attempt to create a system with a more open governance structure, the two launched Decred (short for “decentralized credit”) on February 8, 2016.
Decred is based on an alternative implementation of bitcoin called btcd, written in Google’s programming language Go. The project’s core ideas stem from a white paper titled “Memcoin2: A Hybrid Proof-of-Work, Proof-of-Stake Cryptocurrency.” Similar to Bitcoin, Decred has a 21 million supply cap. But unlike Bitcoin, 1.68 million (8 percent) of Decred’s coins were pre-mined. Of those, half went to pay developers who contributed to the project early on, while the other half was airdropped (given out for free) to ensure a wide distribution in the network.
In Decred’s consensus system, proof of stake works alongside proof of work to give coin holders more of a voice in the system. Anyone who owns decred can buy tickets to participate in the protocol. The price of tickets (currently around $8,000) fluctuates based on demand to ensure that around 41,000 tickets are active in the network at any given time. When you buy a ticket (a process known as “staking”) your coins are temporarily locked up for several months. When a new block is created, five tickets are chosen at random to verify the block and vote on outstanding issues. As an incentive to participate, voters get 6 percent of the block reward.
Now headed into its third year, Decred recently released its 12-month roadmap. Bitcoin Magazine spoke with project lead Yocom-Piatt to get a sense of the highlights of the roadmap.
Decred’s most important project, by far, is its treasury system. Last year, Decred applied voting to unactivated consensus changes in the daemon. Similar to how soft forks get activated in Bitcoin, stakeholders in Decred vote by flipping a version bit in a block header. Once a majority threshold is reached, the new code activates automatically.
Now, Decred wants to completely decentralize the control of its development funds. (Other projects are working toward similar goals, but if Decred pulls this off, it could be among the first to fully disintermediate the handling of treasury funds.)
As it stands, 10 percent of Decred block rewards go into a development fund to create a consistent cash flow for the project. Right now, control of the funds (currently valued at $28 million) is in the hands of the Decred Holdings Group LLC. Plans are to pass control of those funds to the community via a decentralized autonomous organization (DAO), a type of smart contract that requires stakeholders to approve all spending.
How it works is, anyone in the community will be able to submit a development proposal for a small fee. Ticket holders can then vote on the proposals they want to fund. Once a proposal is approved, users can create their own decentralized autonomous entity (DAEs) to govern the release of those funds.
“For most practical purposes, you can consider a DAO and a DAE to be identical in function,” Yocom-Piatt explained. “For Decred, there will be the project-level Decred DAO, which is effectively a government entity whose actions are dictated by the stakeholders, and then individual users can form their own DAEs, similar to how you or I could form a C-corporation or LLC here in the U.S. to start a business.”
Both the DAO and DAEs will exist on-chain, but proposal submission and voting will take place off-chain in a version-control system dubbed “Politeia,” which is anchored to the blockchain via timestamps. This means nobody can surreptitiously modify a proposal.
“Every hour, there is an anchor dropped into the Decred blockchain that allows you to basically say [that] all the information that is in this Git repository existed on or before a given date,” said Yocom-Piatt. “It is like a time-ordered version of Github that you cannot fake.”
Work on Politeia is nearly done, says Yocom-Piatt. Decred just needs to add a voting element before deploying the platform on the mainnet. He thinks Decred could have the DAO up and running by the end of 2018, but DAEs may not happen until 2019.
Both types of smart contracts will be written in Bitcoin’s scripting language (remember, Decred is a fork of Bitcoin) but will require extensions in the form of new opcodes.
In another ambitious undertaking, Decred is looking to remove trusted third-parties from the process of moving funds in and out of Decred. This way, someone holding, say, bitcoin, can trade their bitcoin for decred directly, without going through an external exchange.
Key to this idea is the atomic swap, smart contracts that authorize cross-chain trades based on whether participants can publish a hash preimage. Decred completed the first on-chain atomic swap between Decred and Litecoin in October 2017. The next step is to create a decentralized exchange that is distinct from the majority of its peers.
“Everyone else who has used [atomic swaps] to date, has done so in an attempt to capture a fee on the swaps, either as an explicit fee or via an intermediate blockchain or a token that is used to coordinate the swap,” Yocom-Piatt said.
In contrast, Decred wants to implement atomic swaps in a way that captures no revenue, so that, eventually, other exchanges are no longer needed. “This isn't about finding a way to compete with other exchanges for trading fees; it is about eliminating them,” he said.
Decred’s goal in 2018 is to come up with a formal proposal for a decentralized exchange and put the proposal on Politeia for stakeholder approval.
On-chain transactions on Decred take five minutes on average to settle (they take 10 minutes on Bitcoin), which is awkward at best when you want to pay for something on the spot. Decred is planning to implement the Lightning Network, a second-layer solution that allows transactions to be handled instantly off-chain and settled on-chain later, so that users can initiate transactions on the fly. (Lightning is also a central component in enabling atomic swaps.)
Specifically, Decred is implementing lnd, the open-source lightning daemon spearheaded by Lightning Labs. The bulk of the work in porting lnd from Bitcoin is nearly complete, says Yocom-Piatt. He adds that the work has been challenging. That is because Lightning was built with Segregated Witness, and, even though Decred is a fork of Bitcoin, Decred still lacks many of the changes that were bundled into Bitcoin’s Segregated Witness changeset. “There are some outstanding issues with transaction signatures that still need to be sorted out, at which point testing can begin,” he said.
Some instant transactions, like point-of-sale, are particularly useful if you make them with your mobile phone, similar to Apple Pay. To that end, Decred is looking to add simplified payment verification (SPV) support to its wallet, so that mobile clients only need to download a small part of the blockchain to verify transactions.
But Decred wants to implement SPV in a way that preserves privacy. Right now, many light wallets do not support SPV and instead rely on a central server for checking balance and transaction details.
To do this efficiently, the server needs access to your public key, meaning the service can see all of the addresses you use. Meanwhile, most existing SPV clients rely on bloom filters to receive only the transactions relevant to a user’s local wallet. The problem is bloom filters leak information about their users to all the nodes they connect with.
To step around this issue, Decred is using a new light-client protocol by Lightning Labs known as compact filters, which offer most of the benefits of a centralized light wallet, without the negative privacy aspects of bloom filters.
“It drastically reduces the amount of data you need to download to have a functional client,” said Yocom-Piatt. “It is just the headers and some filters, basically 66 MB vs 2.1 GB for entire chain.” He said SPV support should be available to users in the spring.
Undisclosed Privacy Plans
In Bitcoin, transactions are traceable. In 2018, Decred wants to introduce a proposal for a unique privacy feature that will allow users to send untraceable payments. Decred remains tight-lipped on the matter, other than to say it will take a different approach than Monero and Zcash. Yocom-Piatt’s final comment on the matter: “We are going to deliver something working as opposed to just declaring what our plans are.”
Also on the to-do list, Decred plans to make several scaling improvements to its protocol and it will be updating the graphical user interface (GUI) on its Decrediton wallet to support SPV, mobile, Politeia voting and the Lightning Network.
While many cryptocurrency projects are viewed mainly as a store of value, Decred is steering itself toward a future as a functional payment system, and it wants to be among the first to get there. “Our goal for 2018 is to cut the head off the snake, so nobody can cut the head off the snake later,” Yocom-Piatt concluded.