Bitcoin

From P2P Foundation
Revision as of 10:06, 20 February 2011 by Sepp (talk | contribs) (I discuss what I see as a flaw in the design of Bitcoin, the immovable final target amount of bitcoins, which does not take into account a change in the size of the market served by the currency.)
Jump to navigation Jump to search

Satoshi Nakamoto has developed a new open source P2P e-cash system called Bitcoin.

URL = http://en.wikipedia.org/wiki/Bitcoin

Download Bitcoin v0.1 at http://www.bitcoin.org ; Design paper at http://www.bitcoin.org/bitcoin.pdf


Definition

1. Bitcoin is a leader in distributed P2P Currency. Each participant can be part of a network as wide as they can reach, or as small as they choose to make it. The only drawback of Bitcoin is the necessity to use the Bitcoin currency. This is offset for many by the fact that, because the currency is 'in force' and widely used, a number of exchanges have popped up, allowing users to trade coins for other currencies. Bitcoin may be useful for a P2P Network as an immediate replacement for cash with low infrastructure requirements for implementation.


2. From the Wikipedia:

"Bitcoin is an open source peer-to-peer electronic cash system developed by Satoshi Nakamoto. The system is decentralized with no central server or trusted parties. Bitcoin relies on cryptographic principles to create unique, unreproducible, and divisible tokens of value. Users hold the cryptographic keys to their own money and transact directly with each other, with the help of the network to check for double-spending." (http://en.wikipedia.org/wiki/Bitcoin)


Description

1. Satoshi writes:


"It’s completely decentralized, with no central server or trusted parties, because everything is based on crypto proof instead of trust.

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 here 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."


2. Aran explains:

Bitcoin is an open source peer-to-peer (a.k.a "p2p") electronic cash system that's completely decentralised, with no central server, trusted authorities or middle men. The availability of bitcoins can't be manipulated by governments or financial institutions. Bitcoin already has a number of exchanges for converting to and from other currencies; BitcoinFX, New Liberty Standard, Bitcoin Exchange and Bitcoin Market.

Bitcoin may last for years and become a popular global currency, or it could be just a flash in the pan, but either way I think this is an important sign of the times to come. This is one of the first truly decentralised currencies and has paved the way for hundreds more to compete together in the new arena of Cipherspace over the coming years. This is one of the key factors in the transition of global society into the post-nation-state economy talked about in The Sovereign Individual.

In a p2p computer network there are no servers, the entire network is composed of users running instances of the application on their computers. Each running instance offers a small amount of processing and storage resource to the network so that it can deliver the services it was designed for such as redundant storage, anonymity or voice-over-IP applications.

In the case of a p2p currency system, some of the services the network is designed to offer are privacy, verification, authentication, currency creation and transfer of ownership. To ensure a reliable and tamper-proof system requires a lot of resource, and that amount is proportional to the amount of coins in the network. The network is able to pay the users for the resource they offer by making the coin-creation process part of the network protocol itself instead of being handled by a central trusted authority. This creates a natural and incorruptible link between the supply of currency in the network and the demand for it.

Even aside from the ability to exchange bitcoins for other currencies, it still makes a very useful tool for independent organisations and groups because it allows them to trade and settle accounts amongst themselves independently and privately. It effectively gives them a "bank" that has a trustworthy system of accounts that can't be tampered with and requires no corruptible central authority to operate. See the Bitcoin Whitepaper for more detail about how it works.

To try Bitcoin, download the Bitcoin software, then once it's running, click 'Generate Coins' which will pay you bitcoins in exchange for your computer working to validate bitcoin transactions. Check the exchange rate to calculate how many bitcoins need to be sent. The payer can purchase additional bitcoins if needed. The payer's previously generated bitcoins allow for a lower out of pocket payment. The payer then sends the bitcoins to the receiver using the Bitcoin software. The receiver can then sell their bitcoins for dollars. The receiver's previously generated bitcoins allow a higher dollar payout." (source?)


Context

Rainey Reitman (EFF):

"To understand digital currency, one must first note that money in the digital age has moved from a largely anonymous system to one increasingly laden with tracking, control and regulatory overhead. Our cold hard cash is now shepherded through a series of regulated financial institutions like banks, credit unions and lenders. Bitcoin, created in 2009 by Satoshi Nakamoto, is a peer-to-peer digital currency system that endeavors to re-establish both privacy and autonomy by avoiding the banking and government middlemen. The goal is to allow individuals and merchants to generate and exchange modern money directly. Once the Bitcoin software has been downloaded, a user can store Bitcoins and exchange them directly with other users or merchants — without the currency being verified by a third party such as a bank or government. It uses a unique system to prevent multiple-spending of each coin, which makes it an interesting development in the movement toward digital cash systems.

The model proposed by Bitcoin is in many ways a response to some of the privacy and autonomy concerns surrounding our current financial system. Current money systems now increasingly come with monitoring of financial transactions and blocking of financial anonymity. A peer-to-peer currency could theoretically offer an alternative to the bank practices that increasingly include sharing information on their customers who don't actively opt-out, and who may even then be able to share data with affiliates and joint marketers. Bitcoin is particularly interesting in the wake of recent events that demonstrated how financial institutions can make political decisions in whom they service, showcased by the decisions of PayPal, Visa, Mastercard and Bank of America to cut off services to Wikileaks. Bitcoin, if it were to live up to the dreams of its creators, might offer the kind of anonymity and freedom in the digital environment we associate with cash used in the offline world.

But Bitcoin's current implementation won't resolve all of the issues surrounding autonomy and privacy. Notably, the anonymity on Bitcoin is not entirely secure at this time, which makes its merits as a more private form of currency tenuous at best. There are also other weaknesses to the system, some significant, which should be understood before using Bitcoin. And as of this writing, Bitcoin can't be used to donate to Wikileaks. But even more important than these concerns is the fact that governments around the world may raise legal issues with any digital cash scheme — ranging from money laundering to tax evasion to a range of other regulatory concerns. Nonetheless, Bitcoin is an intriguing project and worth watching to see how it develops in the coming years." (https://www.eff.org/deeplinks/2011/01/bitcoin-step-toward-censorship-resistant)

Interview

Excerpted from a more detailed interview:

"Klint Finley: Could you give us a brief overview of what Bitcoin is for the unfamiliar?

Gavin Andresen: Sure. Bitcoin is the first peer-to-peer currency - it is money created by people instead of by a central bank or government.


And how does it work?

Everybody trying to create bitcoins and everybody trading bitcoins is connected by a peer-to-peer network. And the code everybody is running makes sure nobody else is cheating - nobody else is creating more bitcoins than are allowed, nobody is trying to spend their bitcoins more than once, and that bitcoins are only being spent by their rightful owners.

The really novel idea is a mechanism for preventing bitcoins from being spent more than once WITHOUT relying on a central authority.

The other mostly new idea is limiting the supply of bitcoins without relying on a central authority.


How do you accomplish these things without a central authority? And how do Bitcoin clients and servers find each other?


Let me tackle the easy one first - how do Bitcoin clients find each other:

All p2p networks have "the bootstrapping problem" - without central servers, nodes (machines) on the network need to be able to find each other. Bitcoin solves it using three mechanisms:

1. By default, Bitcoin clients join an IRC chat channel and watch for the IP addresses and ports of other clients joining that channel. The name of that channel (and the name of the IRC chat server) is hardcoded into the Bitcoin software.

2. There is a list of "well known" Bitcoin nodes compiled into the software in case the IRC chat server is unreachable for some reason.

3. You can manually add (via configuration file or command-line option) IP addresses of other machines running Bitcoin to connect.


Once you're connected to the Bitcoin p2p network, other machines send you messages containing IP addresses (and ports) of other machines they know about, so after bootstrapping you find other Bitcoin nodes via the Bitcoin network itself.

There is a lot of discussion about alternative bootstrapping mechanisms, so I wouldn't be surprised if alternative Bitcoin implementations that use something else pop up in the next year or so.


I'm guessing you can also change the IRC server and channel manually as well?

No, actually, you can't - you'd have to recompile Bitcoin to do that." (http://www.readwriteweb.com/hack/2010/12/interview-bitcoin.php)


Discussion

The Difference between Bitcoin and Open Coin

Magius:

"Bitcoin and Opencoin are "sons" of David Chaum's Digicash both. Chaum is one of the most important cryptographers and freedom fighters in the world and invented in the eighties the first digital cash, that was refused, attacked and destroyed by credit card companies societies, that instead wanted to propagate a model not based on anonimity. The big difference between them is that Bitcoin is a complete currency system instead Opencoin is the system to make a currency (a digital mint). Bitcoin you need to use as-it-is, with Opencoin instead you can create your own currency system." (p2p-foundation list January 2011)


Is Bitcoin a deflationary currency?

Sepp:

"The relative value of a currency depends on two factors: The number of currency units available for exchange operations, and the combined value of items to be exchanged using the currency, which is really the size of the market the currency serves.

A currency's relative value will go up as the number of currency units or their availability decreases, or as the size of the market the currency serves grows without a corresponding growth in the available currency units. Technically, this is called "deflation".

A currency's relative value will go down as the number of currency units or their availability increases, or as the size of the market the currency serves decreases without a corresponding decrease in the available currency units. The technical term for this is "inflation".

In the Bitcoin ecology, there is no provision for keeping the currency aligned with the size of the market it serves at any given time. Bitcoin has a phase of growth which at first is fast and then slows progressively, to come to a standstill at 21,000,000 Bitcoins. So the availability of the number of currency units is set to grow, ever more slowly because of increasing difficulty to calculate blocks, and to eventually come to a complete standstill at an arbitrary figure set by the currency's initiators.

It is safe to assume that the market that is being served by Bitcoin will grow in a way dissimilar to the programmed increase of availability of the currency units. It will grow slowly at first and then - as the idea catches on - it will grow at an increasing pace. This disparity of growth between the number of coins and the size of the market will have some undesirable consequences for the stability of the value of Bitcoin. Coins will become more and more scarce, as creation of new coins gets ever slower, but market growth gets ever faster. The consequence is going to be severe deflation of the currency, meaning each existing coin will grow in value.

Prices expressed in Bitcoins will be subject to a continual decrease, while fortunes of Bitcoins obtained by the initiators and early adopters will grow in value. The price decrease will be a continual nuisance as prices need to be adjusted, and the growth of fortunes expressed in Bitcoins will be a reward to early adopters that is not commensurate with any work done. It will also act as an incentive to "sit on" Bitcoins, waiting for them to get more valuable, which takes coins out of circulation, making the natural deflationary tendency of the currency even more severe.

One way to overcome this problem would be to make the target of 21,000,000 Bitcoins mobile, by creating a mechanism that links the target to the real market size. As market size goes up, the final target amount of Bitcoin creation should move up as well, promoting stability of the relative value of Bitcoins.

More Information

Explanatory paper at http://www.bitcoin.org/sites/default/files/bitcoin.pdf


  • Bitcoin for beginners
  1. http://mybitcoin.com ; website version, no download required, start making or receiving donations.

@the best available info for beginners is http://bitcoinme.com.

Other Digital Currencies

"While Bitcoin is relatively young, digital currencies have been around a long time. Digicash, released in 1994, is considered a pioneer of electronic cash using cryptography to maintain anonymity. The Ripple currency project relies on interpersonal relationships to allow communities to create their own money systems (which is similar to the Local Exchange Trading System). There is also the anonymous digital cash system eCache, which can only be accessed via the anonymous onion routing network Tor. There are also numerous other digital money projects that have been proposed over the years; Bitcoin is just the newest chapter in the ongoing effort to create wholly digital currency." (https://www.eff.org/deeplinks/2011/01/bitcoin-step-toward-censorship-resistant)



  1. eCache: an anonymous bank operating over the Tor network.
  2. Pecunix: an (optionally?) anonymous digital gold currency.