I have spent the last few months writing and editing a document which I am ambitiously calling “The Second Bitcoin Whitepaper”. I published it on January 6th (my birthday). If you haven’t seen it yet, please take a look.
I got a ton of fantastic feedback, and a lot of questions and concerns were raised which I would like to address:
What problems does this paper solve?
I wrote my paper because of three fundamental problems which have plagued bitcoin from the beginning:
- Instability. Merchants would love to save on transaction costs, but the wild bitcoin price fluctuations make it very hard for them to realize the savings offered by the bitcoin model. Users who want to store wealth in bitcoins are also deterred, because to do so they must also become currency speculators.
- Insecurity. How many stories have you heard about bitcoins being stolen or lost? Currently, a user must trust either a 3rd party website or trust in their own technical prowess to protect their bitcoins. It would be much better if the protocol could give them a range of options to make their money more secure.
- Disunity. Everyone who gets into bitcoin sees things they would like to change. Currently anyone who wants to set up a bitcoin improvement experiment has to start their own block chain. These competing chains disperse our efforts and confuse our message to the world. It would be so much better if the ability to create experimental currencies were built in to the protocol, especially if each successful experiment increased bitcoin values for everyone.
How dare you call it “The Second Bitcoin Whitepaper”??
I recognize that the title is very ambitious, and I have been accused of unspeakable arrogance for presuming I could name my document that. However I humbly request that you consider a different perspective:
I have contributed to endless debates about the future of bitcoin (and its children) over the past year, and during this time I cherished a hope that someone would write a compelling document envisioning a set of improvements that most people could get behind. I did everything I could think of to inspire someone to do it, but it never happened. I finally got tired of waiting for someone else to step up, and decided that I would give it a shot.
I would love to see another document of the same name, and I beg of anyone offended by my title to create a document more worthy of the name. Nothing would make me happier than seeing a big chunk of our fractured community unite behind a common vision for bitcoin’s future. Certainly any such vision that increases bitcoin values is something that everyone holding bitcoins should welcome.
Why does your paper rely on the intentional destruction of bitcoins?
During the long incubation period leading up to publication, I came up with several essential qualities that a new protocol layer must have. One of the essentials is that a higher protocol layer must increase bitcoin values to the extent that it is successful. This is necessary both to avoid hostility of the community of users already invested in bitcoins, and also for the security of the higher protocol layers, which rely on the hashing power of the bitcoin protocol layer for their own security.
The first time I considered the possibility of incentivizing the destruction of bitcoins, I recoiled from the idea as absolutely abhorrent, and I determined to find a better way to increase their value. However, my countless thought experiments trying to imagine another way always ended badly (usually with users scamming the system in some way). Since another requirement I made was that the higher protocol layers would rely on no changes to the existing bitcoin protocol, every system which didn’t destroy bitcoins needed somebody I could trust to hold the coins removed from circulation. Since I don’t trust anyone with that much money, and wouldn’t expect others to trust me, I was at a loss for a long time.
Finally I had a revelation. After a long session of trying to figure out the problem, I thought “I suppose the ideal solution would be to somehow take the bitcoins that need to be removed from circulation and evenly distribute them among everyone else who holds bitcoins. Too bad we can’t do that.” I then realized that the destruction of bitcoins effectively does do that. I came to see the destruction of bitcoins less as flushing money down the toilet, and more as a payment to the entire bitcoin community from the higher protocol layers. I hope others can see it the same way, or even better, suggest a viable way to raise bitcoin values without destroying them or changing their protocol.
Bitcoins are already complex and difficult to explain. Why add more complexity?
Try explaining how a computer works to someone who has never seen one. As you start talking about the program counter, multi-threading, caches, RAM, ROM, silicon etching, TCP/IP, and so on, you will quickly make just about anyone’s eyes glaze over. It’s much more compelling to show them what a computer can do.
Similarly, I want to be able to show my dad someday how he can safely store U.S. Dollars on his laptop, convert them to ounces of gold with the click of a mouse for nearly free, pay that gold to someone’s store who takes Euros (with the exchange to Euros happening completely transparently). When he sighs that he thinks oil prices are going to go up again, I’ll show him how he can convert some of his money from gold to track the price of oil instead, again with a mouse click and zero paperwork.
The complexity I propose adding results in a simple, elegant user experience. Of course you need some people who understand silicon etching to make computers, but you needn’t understand that process to use one.
Why create a centralized “trusted entity” when the whole point of bitcoin is decentralization?
This is perhaps the least essential piece of my proposal, but I still think it is the best answer for how to distribute MasterCoins. If some bored programmer implements my ideas in their copious free time with no direct compensation, everything would still work, but distributing the MasterCoins would be less elegant (a LOT of bitcoins would be destroyed by people purchasing the first MasterCoins).
I really like the idea of a protocol which pays for its own development, and while this does create some centralization, it does not create a single point of failure. If a government shut down the “trusted entity”, the show would go on, and someone else would pick up the open source project where they left off.
Perhaps my favorite thing about the trusted entity is that they would almost certainly hire a lot of the bitcoin community to do the work. Like many of you, I would love a bitcoin-related day-job, and a well-funded entity of this sort could hire a lot of us.
Why bloat the bitcoin block-chain with these additional transactions?
One of my goals from the start has been to make bitcoins more valuable. All of the things I described could of course be done in a different block-chain, but there are two reasons I want to build on top of bitcoin rather than beside it:
- I want to make the bitcoin community more unified, so that our message to the world is clearer, and new users aren’t forced to choose which bitcoin vision to get behind. Rather, they can purchase some bitcoins and benefit from the success of ANY vision built on top of them.
- I want to see everyone who bought bitcoins at ANY price vindicated, even the poor soul who bought some of mine at $34 each at the peak of the recent speculative bubble. If you have ever bought bitcoins, you probably had at least one person in your life who thought you were crazy. I think that “poor soul” that bought from me was completely correct about the value of the bitcoin idea, and I want to see them and everyone else who invested proved right decisively.
Our beloved Satoshi is on record that he doesn’t think it appropriate to embed data willy-nilly in the block-chain, but I doubt he would be opposed to the additions I’ve suggested, as they are almost entirely monetary transactions, which is what the chain is intended to store.
Your vision relies heavily on manipulating certain prices. Will that actually work?
Now we finally get to the most important question. “Price manipulation” has a negative ring to it, and deservedly so. Usually this refers to a secret attempt to change the price of a security to benefit those in the know at the expense of everyone else. However, what I am proposing is not secret, but is rather written into open source code, and its action is totally transparent to the market, with the actions taken under each circumstance known in advance.
There are two manipulations suggested. The first is the minimum bitcoin price, expressed in MasterCoins. I am quite certain this model will work, as it is very simple to work through the scenarios that could happen. There are only two:
- MasterCoin values fall or bitcoin values rise. In this case, nothing happens. Bitcoins can be worth a huge amount, and MasterCoins can fall to nothing, and no action would be taken.
- MasterCoin values rise or bitcoin values fall. In this case, once the spread is big enough, new MasterCoins begin being sold by the protocol, but the bitcoins users send to buy those MasterCoins go to a fake address, effectively destroying them. At this point, one of two things must happen: either bitcoin values must rise, or MasterCoin values will fall. The only way this wouldn’t happen is if every single person buying MasterCoins with bitcoins ignored the cheaper MasterCoins and chose the more expensive ones instead. As a wise man once said, “Inconceivable!”
The second price manipulation suggested is not as simple: the volatility transfer which holds user-created targeted currencies to their face value. There are several variables which can be tweaked when creating a user currency, and probably some combinations won’t work very well. This is why it is so important that a failed user currency fail gracefully – since some of them will certainly fail.
I expect that users will actually do most of the “price manipulation” for the viable user currencies, especially once they are well-established. Since everyone knows that the protocol will move the price back to the target in the long run, any time the price deviates from the target in the short run, arbitrage traders will bet on the price returning to target (which then becomes a self-fulfilling prophecy). The protocol should be able to stay out of the way most of the time.
When the protocol does act, it does one of two things:
- When the currency price is above target, the protocol creates new currency and sells it, simultaneously buying and destroying some of the volatile “shares”. Consequently, the share prices go up while the currency price drops back toward the target.
- When the currency price is below target, the protocol creates new volatile shares and sells them, simultaneously buying and destroying some of the currency. Consequently, the share prices drop while the currency rises back toward the target.
It isn’t really terribly complicated, but I’m not aware of anyone ever trying something like this before, so it’s hard to prove that it works without actually trying it. Nevertheless, I strongly believe it will work.
So What’s Next?
My greatest fear for my paper was that someone would find a fatal flaw in the proposal, sending me back to the drawing board. At the very least, I assumed I would have to make some major revisions. However, I’ve been pleasantly surprised to find that the paper needs virtually no revisions yet, instead needing some additional explanation as to why I made some of the choices I did, which I am now doing here.
The changes I describe, or some changes very like them, now seem more inevitable than ever. I am discussing with a wide variety of people various ways of moving forward with these ideas, and I am very open to any offers of collaboration and/or further feedback.