2012-10-02

Bitcoin is a peer-to-peer digital currency. It does not depend on any particular organization or a person and is not backed by any commodity like gold or silver. Bitcoin is a name for both the currency and for the protocol of storage and exchange. Just like any other money (dollars, gold or sea shells), Bitcoin does not have much direct use value. It is valued subjectively according to one’s ability to exchange it for goods.

This FAQ complements the bigger Bitcoin FAQ: https://en.bitcoin.it/wiki/FAQ. You may start here and then proceed with Bitcoin Wiki for more details.

If you have already heard of Bitcoin mining and exchange, or you are interested to know more about it, scroll to “Who is interested in Bitcoin?”.

Why is it any good?

Bitcoin is designed to be a faster, cheaper and a more secure currency. It is fast because it is purely digital and the verification of every transfer is completely automated without any human supervision. Security is achieved by having every participant do the verification themselves using open protocol based on well known cryptography methods. Bitcoin is designed to prevent double-spending, stealing and creating money out of nothing. The original software source code is open and available for everyone for review and improvement.

How does it work?

Bitcoin does not have a central storage. In fact, bitcoins do not exist as distinct items of information. They only exist as records in a global transaction history. The whole database of transactions is stored and synchronized between all participating computers. Transactions are grouped into blocks, that are cryptographically signed in such a way that they are computationally hard to produce. Such cryptography guarantees that no one can revert a transaction or double-spend the same amount of bitcoins.

Since actual bitcoins are only recorded in a transaction history (which is stored on everyone’s computer), each participant only needs a secret key to be able to spend her bitcoins. Thus, the bitcoin wallet is just a collection of keys, one for each address. Each person may have one, two or hundreds of addresses. Keys are used to sign new transactions to verify that the proper owner of the address is spending bitcoins. Then every client in the network can verify that the signature is valid and that the whole chain of transactions is done by actual holders of their keys. One may steal bitcoins only by stealing secret keys.

Who creates bitcoins?

Bitcoins are not created upfront and distributed to some privileged persons. Instead, they are made available as a reward for verifying and securing transactions. Transactions are grouped in blocks that make up a chain. Blocks are computationally expensive to generate which makes double spending extremely difficult. The reward for creating a block is a first transaction that sends 50 BTC from nowhere to any address chosen by creator of the block.

The reward is halved approximately every 4 years until total of 21 million bitcoins are generated around year 2140. Currently more than 9 million of bitcoins are available already. Every participating computer checks that the reward is generated at a constant speed, has correct value and comes from the actual useful work. See the chart here: https://en.bitcoin.it/wiki/Controlled_Currency_Supply

Is 21 million enough?

The minimum amount of bitcoins to be transferred is 0.00000001 BTC (limitation of a 64-bit format used for representing the amount in a transaction). This gives more than 2000 trillion of smallest units. And if everybody finds it useful in the future, the format can be changed to allow even smaller values.

Is Bitcoin inflated out of thin air just like any modern fiat money?

No. Bitcoins are not inflated, they are earned. All 21 million of bitcoins already exist, if you will, and everybody knows how many and what one needs to do to earn them. You may earn them from exchange with existing owner, or from exchange with bitcoin users by validating and securing their transactions. When you create a transaction, you agree that somebody else will earn some predetermined amount of bitcoins and increase the existing money supply by that amount when he creates a valid and secured block containing your transaction. Also, the rate of new blocks’ creation is kept more-or-less stable by the protocol, so everybody may accurately account for money supply changes in their calculations.

Why bitcoins are created this way?

The supply is designed to be constant in order to avoid undermining the value of bitcoin in favor of less inflationary instruments (e.g. physical gold). At the same time, bitcoin is introduced gradually to motivate early adopters to work hard on establishing a secure and efficient network. Protocol ensures that the computational difficulty of generating blocks is adjusted when amount of processing power goes up and down, so the frequency of rewards remains constant. That makes it easy to do business calculation without risking drastic price changes.

Who is interested in bitcoins?

There are normally three reasons people get interested in bitcoins:

Mining.

Speculative exchange with other currencies and liquid assets.

“Regular” use in exchange for goods and services.

My personal opinion is that “average” person may safely ignore the first two reasons for himself. Mining, the process of creating blocks of transactions to get a reward, was possible on a home computer some time ago, but then the value of bitcoin has grown and much more people started mining and as more computing power was thrown in the process, the more competitive it became. Today professionals employ custom-designed hardware, and since the protocol increases the computational difficulty to keep mining at a constant rate, using less powerful computers would be prohibitively slow and expensive.

Speculation on currency exchange also becomes more and more competitive and today is by no means an easy way to get rich.

Therefore, this FAQ focuses on the third reason: using bitcoin for what it is designed for, as money.

Who accepts bitcoins?

Bitcoin is a very young currency (about 3 years), but it already covers a surprisingly wide variety of goods and services. You can pay for services, buy digital and physical goods: books, games, movies, drugs etc. So far you cannot buy groceries, but some coffee shops already accept bitcoins. Still, as a young currency bitcoin lacks many useful applications, but the variety and quality is expanding. There are wallet apps for computers and smartphones. There are different ways to buy bitcoins offline in physical form, some companies are building processing services, debit card services and such. Right now bitcoins are not always convenient or very easy to use, but the trend is very strong towards more and better services.

See a list of places where one can buy, earn and spend bitcoins: https://en.bitcoin.it/wiki/Trade

How do I use Bitcoin?

You have to use a software or a web service to keep your wallet and create transactions. Wallet is a collection of private keys (like passwords, but much longer), it does not contain any bitcoins by itself. Each bitcoin address has a corresponding private key that allows you to send money from that address. Anybody who has the private key is able to spend money from the corresponding address. Address and keys are free and anybody may have hundreds of them. To increase privacy, it is recommended to use a new address for each transaction. Popular bitcoin software does that for you automatically.

How does Bitcoin protect against fraud?

Unlike Visa, MasterCard and PayPal, all bitcoin transactions are final and cannot be reversed. Chargeback thus can be performed based on a good will of the seller. On the other hand, Bitcoin transactions do not just express transfer of funds, but may also express complex contractual agreements. For instance, one may create a transaction between a seller, a buyer and a mediator. If seller and buyer agree on a transaction, mediator cannot cancel it. But if there is a conflict, then mediator may side with either buyer or seller to decide who receives the money. This way Bitcoin provides a much stronger protection against fraud without a requirement to trust mediator. This idea may be extended to a larger amount of participants to facilitate collective fund raising or insurance.

Is it legal?

See the discussion here: http://www.quora.com/Is-Bitcoin-legal

Bitcoin is certainly in “grey area”. So far nobody is attempting to punish anybody for its use. However, certain activities that are illegal if used with other currencies (fraud, money laundering, illegal purchases etc.) are illegal with bitcoins as well. Also it is obvious that governments would not like alternative currencies that can undermine their ability to control money supply and prices.

Can the government shut it down?

Bitcoin relies on ability to communicate and possess computers with a freedom to install the bitcoin software to create and verify transactions. To stop everybody from using Bitcoin, government would have to suppress everybody’s communication channels and/or computers. Bitcoin is facing the same risk as any internet protocol: being filtered and denied at the level of internet service providers. However, there is no single organization to shut down to cause major disturbance in the network. E.g. if the popular currency exchange is closed, there is nothing that prevents anybody from using other exchange services or even trading in-person. In some sense, bitcoin is as difficult to shut down, as bittorrent.

Isn’t Bitcoin backed by nothing?

The value of Bitcoin (and all other goods) is purely subjective and depends on each individual valuation. Of course, the valuations may be aggregated and averaged, but they all stand on shaky ground of each individual’s decision to buy or abstain from buying. Same applies to dollars, gold, oil and groceries. If one day nobody buys milk, milk-producing companies will experience a huge loss in revenue and possibly severe disruption of their production process. And the reason people normally do not do that is not because of some inevitable natural law or physical need in milk, but because they choose not to do such an organized protest against milk.

While other things are valued in their direct use for consumption or production, money is usually almost completely valued by one’s ability to exchange it. This value is of course self-referential (“money is worth to me according to how much it is worth to others”), but it is established iteratively in a course of history. Initially, money is valued because of its direct use or in speculation that it may be worth more in the future. In case of Bitcoin, initial users were investing their time and money building bitcoin network in expectation of their future value and/or having fun during the experiment. Then, next people get interested in bitcoin because there is already somebody accepting them as a payment. And so on.

Is it fair that early adopters got bitcoins easier and became rich?

Yes. Early adopters took the risk to spend their time and energy on the project which turned out to be useful for later coming people. We came later and now invest in bitcoins paying higher price because we have bigger confidence in the system.

Is it another Ponzi scheme?

No. Bitcoin does not promise any dividend. There is no central issuer of bitcoins and anybody who generates bitcoins (“miner”) makes the process more expensive for himself and other miners, but at the same time increases reliability of bitcoin for everybody.

Just like any other currency, shares or commodity, bitcoins are also subject to speculative bubbles and bursts. Part of its value is based on willingness to spend and receive, the other part is based on anticipation of increase or decrease of such willingness. If that anticipation grows too much, bitcoin may quickly gain in value until nobody wants to buy it anymore. Then people start selling and its price goes down to a “normal” level. These speculative spikes will be getting smoother as market grows. The more people possess bitcoin, the smaller each individual share is to drastically affect exchange rates.

Isn’t it stupid to generate money by burning electricity?

Transactions are secured by putting them into blocks that are computationally-expensive to generate. Which means one has to employ time and electricity to verify and secure transactions to avoid double spending and illegitimate creation of money. Bitcoins are supplied as a reward for early adopters who expend their resources to keep network secure while it is young and growing. Money is not generated because some amount of electricity is spent. It is electricity is spent because other people are demanding that much security and quality of the bitcoin network. Automatically adjusted difficulty ensures that the amount of power to be spent is determined by the current demand in bitcoins, no more or less.

Think of it this way: some people are spending their energy printing metal coins with sophisticated pattern to make forgery hard. This activity is “stupid” only if nobody wants to buy and use these coins.

Why people would generate blocks when the reward becomes very small?

By design, every transaction may include a small fee for inclusion in the block. Right now this fee is usually zero for big enough transactions and insignificantly small for small transactions to prevent spamming. Every block has a limited size (10 Mb), and blocks appear at a constant rate (6 blocks per hour), so transactions may start competing for a place in a block. Today it is far from saturation and the protocol may be changed in the future to allow bigger blocks. But the important point is that transaction fees will be the main motivation for generating blocks. Automatically adjustable difficulty enables market to figure out balance between amount of fees and block creation costs.

Do I need to constantly waste electricity to use Bitcoin?

If you do not want to generate blocks, you will not spend much electricity. You do not even need to be online all the time or to keep a whole block chain (chain of transactions) on your computer. To hold bitcoins you only need secret keys in your wallet. To send a payment you need a client which synchronizes transactions with the rest of the network. Client application can be installed on your personal computer, phone or some other computer which provides you with a service for a fee. Even if you end up using a debit card with an escrow service which will hold your keys, identity and earn fees from transactions, you will still benefit from the more competitive and non-inflationary nature of bitcoins. You may keep most of your savings on your personal computer, for instance. Every escrow service would need to compete with each other and with those who hold bitcoins by themselves.

Do I need to be online to receive payments?

No. Payment is sent by relaying a signed transaction to the network. All you need to do is to give another person one of your addresses to send bitcoins to. To verify that the payment is done, you may check transaction status on http://blockchain.info or similar service. You only need a bitcoin client and internet access to make a payment.

How fast are transactions?

Transactions are secured by being included in a block. Blocks are generated approximately every 10 minutes. Including time to propagate transaction through the network, today it usually takes about 15 minutes to verify inclusion in a block. For better security, one may wait until more blocks are added after the block with transactions. For instance, the protocol requires that generated bitcoins may be used only after 120 blocks added after it (about 20 hours).

How transactions are secured?

Security of the system is based on computational difficulty to generate parallel blocks to fork the main chain. The more blocks are created after a block containing your transaction, the harder it is to fork the chain and make the transaction invalid. Therefore, the transaction is never 100% confirmed. Instead, there is confirmation number — a number of blocks built after creation of a transaction. Zero confirmation means transaction is not yet included in any block (unconfirmed). One confirmation means that transaction is included in one block and there are no more blocks after it yet. Today for small transactions one or two confirmations (10-20 minutes) are considered enough. For bigger transactions six confirmations (1 hour) are considered extremely hard to forge. One known exception is 120 confirmations required by the protocol for use of generated bitcoins. This is because miners (those who create blocks) have the most of computing power in the network and must have extra incentive to play fairly and generate blocks in the main chain without attempting to double-spend their rewards.

What is the main chain?

Each block has a cryptographically signed reference to the previous block (parent). This way blocks form a chain. It is perfectly possible to have two blocks referencing the same parent block. In such case we can think of two parallel chains with some common blocks. Main chain is a chain of blocks with the maximum total difficulty.

What happens when the chain is forked?

Whenever miners accidentally (or intentionally) generate parallel blocks, only one of them will be considered as a part of main chain. When more blocks are added to another one, that block and all succeeding ones will become a part of the main chain.

Reward for the block and transaction fees are valid only for the blocks in the main chain. This creates incentive for miners to try hard to build on top of the main chain and avoid creation of parallel blocks. Otherwise, they will simply waste electricity and time if the block becomes abandoned by the network.

What happens to the transactions in the abandoned blocks?

Transactions in the non-main-chain blocks are not lost. All the valid blocks are distributed among peers, including forked blocks. When it becomes evident that some block will never again become a part of a main chain, miners will treat transactions in that block just like any other unconfirmed transaction and will be free to include them in the new blocks. This means that now they can collect the fees from these transactions while the owner of the abandoned block does not earn nor 50 BTC reward, not transaction fees.

For the transaction user this means an extra delay in transaction confirmation (typically by 10-20 minutes).

Is Bitcoin anonymous?

Bitcoin is not anonymous, but rather pseudonymous. All transactions, addresses and amounts are visible and distributed by the peers. But every address is just a random number and does not have associated identity with it. If one reveals that they are an owner of a particular address, then everybody can see the chain of transactions involving that address. Addresses are free to create and everybody may have hundreds of them (typically, one per transaction). This makes it really hard to see how many bitcoin one has or to whom they send them or where they receive them from.

There are also “laundry” services that randomly exchange some amounts of bitcoins between addresses of each partici

How the limits were chosen? (21 million total bitcoins, 10 minutes per block, 10 Mb block limit)

Here are some parameters of the main chain. They can be tweaked when starting an alternative chain.

Blocks are created every 10 minutes.

Block size is limited to 10 Mb.

Difficulty is adjusted every 2016 blocks (approx. every two weeks)

Initial reward for block is 50 BTC.

Reward is halved every 210 000 blocks (approx. four years).

Points #4 and #5 imply that a total number of bitcoins will not exceed 21 million.

The 10 minute interval is chosen to give enough time to propagate a new block to other miners so they can start working from a new point before creating an unintended fork. If it were 1 minute, new blocks would not have enough time to propagate and network would constantly create forked blocks which just increases delays in transaction confirmation and increases total bandwidth usage. If it were 60 minutes, then it would be less useful to wait for at least one confirmation of a transaction.

10 Mb limit of the block is considered “temporary” until new software is developed that does not require full block chain download. Currently, every bitcoin client downloads all the blocks and to make it more efficient, blocks are not allowed to be very big. Today it is still far from reaching this limit. In theory, however, to use bitcoins one does not need to load the entire block chain, but instead trust some service provider (e.g. escrow service) to do it for their customers.

Difficulty is adjusted every 2016 blocks. It is more or less arbitrary, but bears in mind need for miners to adjust their hardware to the changes in hashrate (rate of testing block signatures during mining). If it were 100 blocks, then the difficulty would adjust almost every day making it much harder to predict changes. If it were 20000 blocks, then difficulty would adjust twice a year which would give a lot of time to disturb the network by growing number of forked blocks (or, if difficulty should go down), by making adjustment process longer and forcing unprofitable miners go out of the business before they can possibly adjust to a lower difficulty.

Initial reward of 50 BTC is purely arbitrary. If it were 500 BTC, then it would not change anything in the market structure, just change nominal prices by a factor of 10.

Reward is changed every four years to give enough time to miners to adopt to the future change in the earnings and adjust accordingly. Note that it does not matter if the reward is halved or cut by 33% or 66%. In the end, on that exponential curve there always will be some interval over which the reward is actually halved.

Bitcoin rewards are exponentially decreasing, instead of being constant until some block in the future, to reward earlier miners who build and secure the network while it is young and vulnerable.

How can the protocol be changed?

The protocol is a list of rules that every client must follow to validate transactions and have their transactions validated by others. Hence, if you change the rules for yourself, other clients will simply reject your transactions and you probably will not be able to accept theirs. This makes it hard to change the protocol. But if there is a change that vast majority of clients will find useful, then it is possible to publicly agree that starting with a block number X, new rules will apply. This will give some definite amount of time to prepare for the change updating software everywhere. This will be required to change such rules as a maximum size of a block, minimum representable amount of bitcoins etc. The changes that favor some group of users over the others will not be accepted by others and blocks will not be validated and propagated throughout the network.

Donation

If you like this FAQ, you may donate 0.1 BTC on this address: 1PWAjkxoEmRVY1FYaPTrpNsomhDjjBMu4h.

If you have more questions or corrections, please contact me: oleganza@gmail.com (twitter: @oleganza).

Show more