Wednesday, November 09, 2011

Making Money the (Computationally) Hard Way

Digital cash systems have come and gone but Bitcoin seems to be doing okay. By request I am giving a lecture about Bitcoin in my crypto class. Most of the material I find about Bitcoin is either very high level for a typical user or very low-level detail for the implementer. In this post I'll try to hit the middle ground.

Bitcoin tries a different approach to digital case. Their goal is not anonymity but more a cash system that works in a peer-to-peer network without a central authority.

The basics of Bitcoin come from a paper by the mysterious Satoshi Nakamoto. The Bitcoin systems doesn't use encryption but it does make strong use of secure hash functions and digital signatures. A user establishes an account by creating public and private keys for an elliptic-curve based signature scheme. A hash of the public key serves as the account number.

A transaction from person A to B roughly consists of the amount, a link to an earlier transaction where A received bitcoins, B's account number, A's public key and A's signature of all of the above. Transactions are transmitted to everyone. More general transactions are also possible.

Transactions aren't accepted until they appear in a block. A block consists of a hash-tree of transactions, an extra transaction giving 50 bitcoins to the block creator (this will decrease over time), a hash of the previous block, a time stamp and something called a nonce. The nonce is just an extra number chosen so that the hash of the block has a certain number of zeros in the right place.

You create money by creating blocks which requires finding the right nonce, a computationally difficult task. The number of zeros is set so that a new block is created on average every ten minutes. A transaction is accepted when there is a chain of six block starting with the one where the transaction occurs. This prevents double spending as that firmly establishes this chain as the "official" one.

There's a lot more details but the idea is a clever use of computation to mine money like one can mine gold with considerable effort. Or you can get money by trading goods or services (or real currency).

Not clear to me that it could scale for wide-spread use but still quite a clever and so far working system.

16 comments:

  1. Whether it is working is open to question; last I heard there was a half-million dollar theft (google 'bitcoin theft' for articles).

    ReplyDelete
  2. David Williamson: If this is what decides whether or not a currency is "working", then I recommend this story about the theft of $6.6 billion worth of $100 bills:

    http://articles.latimes.com/2011/jun/13/world/la-fg-missing-billions-20110613

    ReplyDelete
  3. We have a recent paper that discusses incentives issues in Bitcoin. Maybe some of you will find it interesting.

    ReplyDelete
  4. since that "theft", the developers have reacted and the bitcoin wallet's private keys in the standard client are encrypted and hence protected by a password. without those private keys, an attacker can only know how many bitcoins you probably have, but not issue any transactions!

    ReplyDelete
  5. BitCoin seems to be doing okay? Really?

    http://www.forbes.com/sites/timothylee/2011/08/07/the-bitcoin-crash/

    http://bitcoincharts.com/charts/mtgoxUSD#vztgSzm1g10zm2g25

    ReplyDelete
  6. @Jeffe, volatility is to be expected. The currency is working as it was designed. Bitcoin is used every day, it has a multi-million "market cap", and it has held up to attacks for a couple years now. I'd say it's doing better than okay.

    ReplyDelete
  7. How many transactions with what total worth does Bitcoin do in a year? In 2009 VISA had over 60 billion transactions for a total value of over 4 trillion dollars. At the current value of a Bitcoin, the total worth of the entire currency is around $20 million, right?

    ReplyDelete
  8. Worth $30 per coin in June versus $3 per coin now is more than "volatility" that "is to be expected" unless you are the German Papiermark in the early 1920s.

    ReplyDelete
  9. You're being shortsighted. People have been trying to make a decentralized virtual currency for decades. Things are possible (and happening!) now that were impossible before. That's what I call success in this case. Though I suppose it is subjective, and if being worth billions is your definition of success, I concede that it isn't there yet.

    ReplyDelete
  10. Timothy Lee doesn't know what he's talking about.

    Bitcoin price volatility is only b/c it holds such great promise that speculators ran it up and crashed it also. But that has nothing to do with how well the currency is functioning. its impenetrable.

    ReplyDelete
  11. How many transactions with what total worth does Bitcoin do in a year? In 2009 VISA had over 60 billion transactions for a total value of over 4 trillion dollars.
    ----
    How much volume did VISA do in it's 3rd year? Looking at bitcoincharts.com I see there have been $1M worth of transactions in the last 24 hours. Granted Bitcoin transactions are so much easier and cheaper than VISA and that's going to pump volume. I'd never use a VISA to give my sister $20, but I would with Bitcoin.

    ReplyDelete
  12. I think PayPal did around $100 billion in transactions last year. That might be a better comparison than VISA in terms of volume.

    ReplyDelete
  13. VISA in its 3rd year is a useless comparison since there was a totally different financial culture at the time, it started in a very limited area, and things were being done on paper.

    $300M versus $4,000,000M seems like it was worth mentioning.

    ReplyDelete
  14. How do BitCoins deal with inflation? That is, if people start making new ones, won't the currency rapidly decrease in value?

    The main approaches I've heard about to address inflation involve some sort of central authority. Which defeats the purpose.

    ReplyDelete
  15. How do BitCoins deal with inflation? That is, if people start making new ones, won't the currency rapidly decrease in value?
    ---
    Bitcoins are produced to random participants in the network at a rate that is goverened by the network and software running it. This leads to an inflation rate currently of about 37% which will halve sometime in 2013 (really when a certain block number is reached). It will halve again a couple or few years later. The total BTC ever issued is likely to be about 21 million.

    Long term, if Bitcoin is successful, deflation will be the norm. Deflation isn't really a problem for Bitcoin because they can be spent in amounts of 0.00000001 (or less with software upgrades).

    ReplyDelete
  16. Wired had an article
    The rise and fall of bitcoin

    http://www.wired.com/magazine/2011/11/mf_bitcoin/all/1

    Gee, its not dead yet. Is it?

    ReplyDelete