Crypto-currencies such as Bitcoin have opened the door to an economic revolution in the information age as significant as the industrial revolution before it. BitShares X is the first experiment in taking the ideas introduced by Bitcoin to the next level by producing trust-free digital assets that have the potential to track the price of anything. In this paper we share the details of how BitShares X is designed and functions.
BitShares X is the first implementation of ideas first introduced by Daniel Larimer on May 24th 2013 in a post on bitcointalk.org. T[d]he ideas have evolved and been refined over time until a new metaphor for describing crypto-currencies was introduced in an article published on letstalkbitcoin.com titled “Overpaying for Security” fi[e]rst introduced the concept that crypto-currencies should be viewed as shares in businesses with an eye toward maximizing profits by producing the most value possible at the least possible cost. These businesses have come to be known as Decentralized Autonomous Companies (DACs).
Bitcoin can be viewed as a DAC where instead of ‘coins’ you have ‘shares’. The transaction fees are revenues and the miners are employees. In the case of Bitcoin, operating expenses exceed revenue earned from operation and therefore Bitcoin is operating at a loss of about $1 billion dollars per year (as of this writing). The business model of Bitcoin is hardcoded into the block chain and will not break even for 100 years.
A DAC’s goal is to maximize revenue from transaction fees by increasing the value provided by the transactions while minimizing the cost of operations. Instead of creating ‘coins’, DACs have shares much like a corporation. A share is nothing more than a percentage of a whole. There are many ways to allocate shares and historically crypto-currency (shares/coins) have been issued as needed to pay employees (miners) to secure the network with computational power. However, the issuance of shares to new employees debases the value of shares held by old employees and is considered an expense by traditional businesses.
There have been three primary ideas introduced on how to secure a network: proof of work, proof of stake, and consensus by voting. The goal of this security is to make it economically infeasible to change the transaction history or produce forged blocks. This is important because without protection against forgery no one can be certain that the shares they think they own will be recognized by others in the future. Additionally a network must be secured against denial of service attacks where someone has the ability to block some or all transactions from being processed by the network.
1.1.1 Proof of Work
Proof of Work was first introduced by Adam Bach as a means of preventing email spam. The idea is that certain computations are easy to verify but difficult to solve the first time. By requiring proof-of-work an attacker must consume significantly more resources to produce data than everyone else must spend to validate the data.
Bitcoin uses proof-of-work to accomplish several goals. The cost of producing a block in both time and money becomes increasingly expensive and thus harder to forge. Meanwhile the process also means that on average only one computer will find a block at a time. This naturally solves the problem of who should produce the next bock.
The theory is that this decentralizes block production and makes it economically inefficient for a single bad actor to do more work than all of the honest actors working together. This theory worked well for Bitcoin in the beginning because no one took it seriously, but upon closer inspection we find that this model of security is fundamentally flawed.
Proof of Work is done to earn a profit, and whoever can do the most work for the least reward [f]will earn the most profit and put less efficient competitors out of business. This means that economies of scale will favor centralization of proof of work. In[g] the case of Bitcoin, mining has already been centralized in the hands of a half dozen mining pools and increasingly in the hands of large private ASIC developers. It is now possible for one or two players to block transactions from being included in the network and in the future governments may compel certain balances to be frozen.
So while proof of work has significant costs, it ultimately undermines the value proposition of a DAC by creating the very situation it was intended to prevent, centralization. For this reason Proof of Work is not a suitable model for securing a transaction ledger.
1.1.2 Proof of Stake
The concept of Proof of Stake was first introduced as a means to counter known attacks on the Proof of Work based networks, primarily the 51% attack. The 51% attack would enable denial of service and transaction filtering as well as double spends by the attacker.
Existing Proof of Stake systems such as Peercoin are based upon ‘proof blocks’ where the target the miner must meet is inversely related to the coin-days-destroyed. Someone who owns Peercoins must choose to become a Proof-of-Stake miner and commit some of their coins for a period of time to secure the network.
The creators of Peercoin recognized that Proof-of-Stake in this form was insufficient so they rely upon a hybrid system whereby both Proof-of-Stake and Proof-of-Work are used to secure the network.
A recent entrant to the Proof of Stake scene is Nxt which claims to be 100% proof of stake and does so with a process they call transparent mining. With transparent mining the network deterministically selects who gets to produce the next block. If this person is online at the time then they get an opportunity to earn transaction fees. Otherwise a block is produced by the next in line.
The problem with existing proof of stake systems including Peercoin and Nxt is that they depend upon a subset of users that actually choose to dedicate computational power to mining in an effort to earn income from transaction fees. This creates two classes of users and significantly reduces the percentage of the money supply used to secure the network. Additionally both of these systems suffer from the potential that a large stake holder could perform a denial of service attack by refusing to include some or all transactions.
The consensus process was first introduced by Ripple. Ripple made a very important and fundamental observation that in a market all that is necessary is for everyone to agree and that it is in the best interest of everyone to agree. They then combined this realization with the fact that with enough peers with diverse and competing interests it is almost impossible to conceive of them working together in an attempt to defraud you, especially if they have public reputations on the line.
The Ripple process builds a transaction ledger just like everyone else and a diverse group of nodes sign off on the ledger. Using a voting system biased toward agreeing with one another, the nodes are able to come to a consensus on what order to include new transactions. These nodes have no need to prevent forged transaction logs because they stay synced at all times and simply trust the majority when they reconnect.
This process is not free. Nodes must exchange extra messages to reach consensus. Ripple nodes are not compensated with transaction fees, but instead transaction fees are destroyed reducing the number of XRP (the Ripple currency) in circulation. The act of destroying the transaction fees is the moral equivalent of paying a dividend. As such the Ripple network is the first profitable DAC.