Bitcoin open source implementation of P2P currency

I've developed a new open source P2P e-cash system called Bitcoin. It's completely decentralized, with no central server or trusted parties, because everything is based on crypto proof instead of trust. Give it a try, or take a look at the screenshots and design paper:

The root problem with conventional currency is all the trust that's required to make it work. The central bank must be trusted not to debase the currency, but the history of fiat currencies is full of breaches of that trust. Banks must be trusted to hold our money and transfer it electronically, but they lend it out in waves of credit bubbles with barely a fraction in reserve. We have to trust them with our privacy, trust them not to let identity thieves drain our accounts. Their massive overhead costs make micropayments impossible.

A generation ago, multi-user time-sharing computer systems had a similar problem. Before strong encryption, users had to rely on password protection to secure their files, placing trust in the system administrator to keep their information private. Privacy could always be overridden by the admin based on his judgment call weighing the principle of privacy against other concerns, or at the behest of his superiors. Then strong encryption became available to the masses, and trust was no longer required. Data could be secured in a way that was physically impossible for others to access, no matter for what reason, no matter how good the excuse, no matter what.

It's time we had the same thing for money. With e-currency based on cryptographic proof, without the need to trust a third party middleman, money can be secure and transactions effortless.

One of the fundamental building blocks for such a system is digital signatures. A digital coin contains the public key of its owner. To transfer it, the owner signs the coin together with the public key of the next owner. Anyone can check the signatures to verify the chain of ownership. It works well to secure ownership, but leaves one big problem unsolved: double-spending. Any owner could try to re-spend an already spent coin by signing it again to another owner. The usual solution is for a trusted company with a central database to check for double-spending, but that just gets back to the trust model. In its central position, the company can override the users, and the fees needed to support the company make micropayments impractical.

Bitcoin's solution is to use a peer-to-peer network to check for double-spending. In a nutshell, the network works like a distributed timestamp server, stamping the first transaction to spend a coin. It takes advantage of the nature of information being easy to spread but hard to stifle. For details on how it works, see the design paper at http://www.bitcoin.org/bitcoin.pdf

The result is a distributed system with no single point of failure. Users hold the crypto keys to their own money and transact directly with each other, with the help of the P2P network to check for double-spending.

Thank you for this clarification Mr. Nakamoto. It has been an honor to be labeled by my friends as "Satoshi's Drunk Uncle" and it's a moniker I'll wear proudly until the day I retire from Crypto. The Goldcoin (GLD) developers truly admire your work and strive to continue improving upon its design as a tribute to your unparallelled genius. Your admirer and relative in spirit, MicroGuy.

Hello Mr. N,I am Shannon, the Recruiter. I have a client who wishes to retain your services. This is a short term contract [<3 weeks]; all correspondence, work, and payment to be done with anonymity [of course]. The terms and currencies are flexible; you might want to consider the new gametoken all the kids are playing these days - PupCoin or DogCoin or something - they say its on a lunar trajectory.

"The fact is that a unit of account and a unit of currency are two different things, even though we are used to fiat currency being used as both. Bitcoin works technically as a decentralised messaging system and currency token, but since it has only subjective value it has no objective basis in the material world. It is therefore literally use-less as a unit of account by reference to which value judgements are made. The fact that fiat currencies are similarly use-less is irrelevant: I’m not defending them. To be sustainable, a currency unit must be stable, but that is the last thing Bitcoin can ever be, because it is – demonstrably – subject to the ‘madness of crowds’."

Chris has written more extensively on this and with added value elsewhere, but this cuts to the chase: *if no stability, then no good as money*, and events over the year (since this was first posted) confirm the analysis. If you disagree, that's your choice, I'm not here to argue, just to share, and I'll only add that although the scheme is no good for currency, the block chain does seem to have some useful applications.

The value of a currency is inherently subject to the madness of crowds. Value is relative, not absolute, stop thinking in 19th century economic ideas. Diamonds are not inherently more valuable than water.

No, the real problem with bitcoin is that it is not a currency, it is a system of title. If it takes an hour to truly spend something, it's useless for cash-equivalent transactions. You can mitigate that somewhat with wallet companies (call them 'banks' if you want) who trust each other's transactions, but then you just re-created a check clearinghouse.

Russ, you're not understanding the point, which regards a unit of account -- the metric that provides the stability necessary to make something useful as currency rather than "subject to the madness of the crowds". This is necessary to qualify an instrument as a global reserve currency. Moreover, the crisis today is inequitable distribution of real wealth, which is not a result of central creation of money and thus decentralizing creation won't produce equitable distribution, regardless of the speed of transactions.