Difference between revisions of "Help:Introduction"

From Bitcoin Wiki
Jump to: navigation, search
(Putting it all together)
m (Currency: Changes external link to internal.)
 
(186 intermediate revisions by 58 users not shown)
Line 1: Line 1:
<div class="plainlinks" style="border: 1px solid red; width: 100%; background-color: #fcc; padding: 10px; margin-bottom: 25px;">This page requires copy editing and improvement.</div>
+
The purpose of this page is to provide a general overview of the Bitcoin system and economy.
Alice is far away from Bob and wants to buy his [http://www.grasshillalpacas.com/alpacaproductsforbitcoinoffer.html Alpaca socks]. In return, she wants to send him a dollar. She can use something like paypal with its limitations or she can mail him a dollar bill. But a dollar bill is just an item with very low intrinsic value that is accepted by Alice and Bob to represent something significant in the real world like socks. Instead of mailing the bill itself, Alice could have emailed a number, like the serial number imprinted on her dollar bill, and save on stamps and time, we will call this number a [[Main_Page|bitcoin]]. The bitcoin is used as a unit of account to measure the value of the socks Bob gave to Alice. Once Bob receives the bitcoin he would like to know that there is a good chance that he will be able to use the bitcoin to buy other products of similar value in the immediate future (means of exchange) or in the long term future (asset) and he needs to know if there are any unwanted side effects to using it.
 
  
For the transaction to take place, Alice needs to have a bitcoin to start with and Bob needs to decide if he accepts the bitcoin in return for his socks. The value of a bitcoin is affected:
+
==Basic Concepts==
* The bitcoin can’t be replicated (counterfeited) and used again by Alice or someone else eavesdropping to the transaction.
 
* Alice can’t create more bitcoins out off thin air without limit
 
* However, there should be some mechanism that introduces new bitcoins out of thin air into the system, otherwise there would not be enough bitcoins to make it popular by many people. But this mechanism should be agreed by all (fare) and it should be slow otherwise bitcoins cannot be used to store asset.
 
* Bob needs to know that it will be relatively easy for him to find other people that will accept his bitcoin in the same way that he did, this is a circular problem that requires other people to go through the same decision process
 
Bob may consider the following side effects:
 
* Bob needs to know that it will be hard to steal or confiscate his bitcoin once he received it.
 
* Like regular cash, Bob will like to know that his privacy is kept, and other people that will receive the bitcoin in the future will not be able to personally track him.
 
  
=Counterfeiting=
+
===Currency===
==By an eavesdropper==
 
To guarantee that an eavesdropper, Eve, cannot replicate bitcoins we use a [[Wikipedia:Public-key_cryptography|public key system]] to make digital signatures. In this system, each person, such as Alice and Bob, has a pair of public and private keys which he/she stores in a safe [[Wallet|wallet]]. Only the user with his secret private key can sign a document, such as the transaction to give some of his bitcoins to somebody else, but any one can validate the signature using the user’s public key. The bitcoins, in Alice's hands, already contain a signature by whoever sent her the amount.
 
  
* Bob sends his public key to Alice.
+
Alice wants to buy the [[Alpaca|Alpaca socks]] which Bob has for sale. In return, she must provide something of equal value to Bob. The most efficient way to do this is by using a medium of exchange that Bob accepts which would be classified as currency. Currency makes trade easier by eliminating the need for [https://en.wikipedia.org/wiki/Coincidence_of_wants coincidence of wants] required in other systems of trade such as barter. Currency adoption and acceptance can be global, national, or in some cases local or community-based.
* Alice adds Bob’s public key to the coin’s content.
 
* Alice signs the transaction with her secret private key.
 
  
As a result, the new coin, that Eve may be intercepting, contains the public key of both Alice and Bob.
+
===Banks===
  
Later on, when Bob will transfer the same coins to Charley, he will do the same thing: receive from Charley his public key, add a new transaction to the coin's chain of transactions and sign it with his (Bob) private key. But only Bob can do this, because only Bob has the private key which is necessary for signing and which is the only private key to match Bob’s public key that is already in the chain.
+
Alice need not provide currency to Bob in-person. She may instead transfer this value by first entrusting her currency to a bank who promises to store and protect Alice's currency notes. The bank gives Alice a written promise (called a "bank statement") that entitles her to withdraw the same number of currency bills that she deposited. Since the money is still Alice's, she is entitled to do with it whatever she pleases, and the bank (like most banks), for a small fee, will do Alice the service of passing on the currency bills to Bob on her behalf. This is done by Alice's bank by giving the dollar bills to Bob's bank and informing them that the money is for Bob, who will then see the amount the next time he checks his balance or receives his bank statement.
  
Eve cannot change who the coins belong to by replacing Bob’s public key with her public key, because Alice signed the transfer to Bob using her private key, declaring that the coins now belong to Bob, and Alice's private key is kept secret from Eve. So if Charley accepts that the original coin was in the hands of Alice he will also accept the fact that this coin was later passed to Bob and now Bob is passing this same coin to him.
+
Since banks have many customers, and bank employees require money for doing the job of talking to people and signing documents, banks in recent times have been using machines such as ATMs and web servers that do the job of interacting with customers instead of paid bank employees. The task of these machines is to learn what each customer wants to do with their money and, to the extent that it is possible, act on what the customer wants (for example, ATMs can hand out cash). Customers can always know how much money they have in their accounts, and they are confident that the numbers they see in their bank statements and on their computer screens accurately reflect the number of dollars that they can get from the bank on demand. They can be so sure of this that they can accept those numbers in the same way they accept paper banknotes (this is similar to the way people started accepting paper dollars when they had been accepting gold or silver).
  
==By the sender==
+
Such a system has several disadvantages:
How to guaranty that Alice does not replicate the coin and use it in more than one transaction:
+
* It is costly. [https://en.wikipedia.org/wiki/Electronic_funds_transfer EFTs] in Europe can cost 25 euros. Credit transactions can cost several percent of the transaction.
* Details about the [[Transactions|transaction]] is [[Network|sent]] to as many other people (to their computers) as possible
+
* It is slow. Checking and low cost wire services take days to complete.
* At least one of the computers sends back a [[Blocks|block]], which is just a large document that includes details of the transaction and other unrelated transactions. The block is sent to as many other people as possible.
+
* In most cases, it cannot be anonymous.
* Eventually the block reaches Bob that can validate that his transaction was recorded and no other transaction for the same coin was made in the past.
+
* Accounts can be frozen, or their balance partially or wholly confiscated.
* In theory, Alice can generate a spoofed block in which her past usage of the same coin does not appear and try to send this block to Bob as an evidence that the coin is OK. But the process of generating a block is designed to take a [[Proof_of_work|long time]] and she is not likely to generate it on time. Keep in mind that Bob is using a new public key for each transaction so Alice can’t prepare in advance. In addition, many other computers are working in parallel to generate an honest block and one of them is more likely to finish before her. In any case, eventually competing blocks will arrive to Bob that will indication that Alice’s coin was already in use.
+
* Banks and other payment processors like PayPal, Visa, and Mastercard may refuse to process payments for certain legal entities.  
  
=Privacy=
 
In order to protect his [[Anonymity|privacy]], Bob can generate a new public-private key pair for each transaction. So David receiving the coin from Charley will not be able to identify who is the second person in the list of transactions. The only thing David will know is the [[Address]] of Bob which is a shortened (hashed) version of his public key.
 
  
=Creation of coins=
+
Bitcoin is a system of owning and voluntarily transferring amounts of so-called ''bitcoins'', in a manner similar to an on-line banking, but pseudonymously and without reliance on a central authority to maintain account balances. If bitcoins are valuable, it is because they are useful and limited in supply.
As we saw, both Bob and Charley need to verify that the original coin that Alice started with is valid. Alice can’t just generate coins out of thin air because the appearance of a coin is also a transaction that needs to be accepted by others (in their blocks.) The only way she can cause a coin to appear in a block is to generate the block herself, and this is exactly how new coins are slowly introduced: every computer that manages to generate a block is allowed to put one transaction in it in which it receives one coin. Other computers receiving the block can validate that only one coin is created and they can then accept this new coin as valid. Generating blocks is a [[Target|slow]] process that requires Alice to spend computer hardware, electricity bill and time and it can be compared to gold mining. It is also a constructive work because the created block is part of a [[Block_chain|chain of blocks]] that together keep a record of all transactions. The coin received by Alice is used as an incentive for the computation work she performed in addition Alice can shave a small [[Transaction_fee|fee]] from the transactions stored in the block and use it as an additional incentive.
 
=Putting it all together=
 
Instead of reading endless wikipages you can directly experience the system in action by visting [http://blockexplorer.com/ Bitcoin Block Explorer].
 
The site shows you the latest blocks in the block chain which are the latest recording of transactions taking place.
 
Note how many blocks were generated in the last hour, should be around 6. Also notice the total amount transfered in the last hour (last time I checked it was about 15K.)
 
This the volume of the bitcoin system and it gives you an indication of how active the system is.
 
  
Next, drill into one of these blocks.
+
==Bitcoin Basics==
Start by noticing that the block's hash begins with a run of zeros, this is what made making it so difficult.
 
The computer that generated this block had to run on many ''Nonce'' values (also listed on the block's page) until it found one that generated this run of zeros.
 
Next notice the line titled ''Previous block'', each block contains the hash of the block that came before it, this is what forms the chain of blocks.
 
Now notice all the transactions the block contains.
 
  
Drill into any of the transactions and you will see how it is made from one or more amounts coming in and out.
+
===Creation of coins===
The fact that there can be more than one incoming and outgoing amounts, allow the system to join and break amounts in any possible way allowing for any fractional amount needed (usually cents.)
 
Each incoming amount is a transaction from the past (which you can also drill to) coming from an address of someone
 
and each outgoing amount is addressed to someone and will be part of a future transaction (which you can also drill too if it also had already taken place.)
 
  
Finally you can drill into any of the addresses and see what public information is available.
+
The creation of coins must be limited for the currency to have any value.
 +
 
 +
New coins are slowly [[Mining|mined]] into existence by following a mutually agreed-upon set of rules. A user [[Mining|mining]] bitcoins is running a software program that searches for a solution to a very difficult math problem the difficulty of which is precisely known. This difficulty is automatically adjusted on a predictable schedule so that the number of solutions found globally for a given unit of time is constant: the global system aims for 6 per hour. When a solution is found, the user may tell everyone of the existence of this newly found solution along with other information packaged together in what is called a "[[Block|block]]". The solution itself is a [[Proof of work| proof-of-work]] or PoW. It is hard to find, but easy to verify.
 +
 
 +
Blocks create 12.5 new bitcoins at present [October 2016]. This amount, known as the block reward, is an incentive for people to perform the computation work required for generating blocks. Roughly every 4 years, the number of bitcoins that can be "mined" in a block reduces by 50%. Originally the block reward was 50 bitcoins; it halved in November 2012; it then halved again in July 2016.  Any block that is created by a malicious user that does not follow this rule (or any other rules) will be rejected by everyone else. In the end, no more than 21 million bitcoins will ever exist.
 +
 
 +
Because the block reward will decrease over the long term, miners will some day instead pay for their hardware and electricity costs by collecting [[Transaction_fee|transaction fees]]. The sender of money may voluntarily pay a small transaction fee which will be kept by whoever finds the next block. Paying this fee will encourage miners to include the transaction in a block more quickly.
 +
 
 +
===Sending payments===
 +
 
 +
To guarantee that a third-party, let's call her Eve, cannot spend other people's bitcoins by creating transactions in their names, Bitcoin uses [[Wikipedia:Public-key_cryptography|public key cryptography]] to make and verify digital signatures. In this system, each person, such as Alice or Bob, has one or more addresses each with an associated pair of public and private keys that they may hold in a [[Wallet|wallet]]. Only the user with the private key can sign a transaction to give some of their bitcoins to somebody else, but anyone can validate the signature using that user’s public key.
 +
 
 +
Suppose Alice wants to send a bitcoin to Bob.
 +
* Bob sends his address to Alice.
 +
* Alice adds Bob’s address and the amount of bitcoins to transfer to a message: a 'transaction' message.
 +
* Alice signs the transaction with her private key, and announces her public key for signature verification.
 +
* Alice broadcasts the transaction on the Bitcoin network for all to see.
 +
 
 +
(Only the first two steps require human action. The rest is done by the Bitcoin client software.)
 +
 
 +
Looking at this transaction from the outside, anyone who knows that these addresses belong to Alice and Bob can see that Alice has agreed to transfer the amount to Bob, because nobody else has Alice's private key. Alice would be foolish to give her private key to other people, as this would allow them to sign transactions in her name, removing funds from her control.
 +
 
 +
Later on, when Bob wishes to transfer the same bitcoins to Charley, he will do the same thing:
 +
* Charlie sends Bob his address.
 +
* Bob adds Charlie's address and the amount of bitcoins to transfer to a message: a 'transaction' message.
 +
* Bob signs the transaction with his private key, and announces his public key for signature verification.
 +
* Bob broadcasts the transaction on the Bitcoin network for all to see.
 +
 
 +
Only Bob can do this because only he has the private key that can create a valid signature for the transaction.
 +
 
 +
Eve cannot change whose coins these are by replacing Bob’s address with her address, because Alice signed the transfer to Bob using her own private key, which is kept secret from Eve, and instructing that the coins which were hers now belong to Bob. So, if Charlie accepts that the original coin was in the hands of Alice, he will also accept the fact that this coin was later passed to Bob, and now Bob is passing this same coin to him.
 +
 
 +
===Preventing [[double-spending]]===
 +
 
 +
The process described above does not prevent Alice from using the same bitcoins in more than one transaction. The following process does; this is the primary innovation behind Bitcoin.
 +
 
 +
* Details about the [[Transactions|transaction]] are [[Network|sent and forwarded]] to all or as many other computers as possible.
 +
* A constantly growing chain of [[Blocks|blocks]] that contains a record of all transactions is collectively maintained by all computers (each has a full copy).
 +
* To be accepted in the chain, transaction blocks must be valid and must include [[proof of work]] (one block generated by the network every 10 minutes).
 +
* Blocks are chained in a way so that, if any one is modified, all following blocks will have to be recomputed.
 +
* When multiple valid continuations to this chain appear, only the longest such branch is accepted and it is then extended further.
 +
 
 +
When Bob sees that his transaction has been included in a block, which has been made part of the single longest and fastest-growing block chain (extended with significant computational effort), he can be confident that the transaction by Alice has been accepted by the computers in the network and is permanently recorded, preventing Alice from creating a second transaction with the same coin. In order for Alice to thwart this system and double-spend her coins, she would need to muster more computing power than all other Bitcoin users combined.
 +
 
 +
===Anonymity===
 +
 
 +
When it comes to the Bitcoin network itself, there are no "accounts" to set up, and no e-mail addresses, user-names or passwords are required to hold or spend bitcoins. Each balance is simply associated with an address and its public-private key pair. The money "belongs" to anyone who has the private key and can sign transactions with it. Moreover, those keys do not have to be registered anywhere in advance, as they are only used when required for a transaction. Transacting parties do not need to know each other's identity in the same way that a store owner does not know a cash-paying customer's name.
 +
 
 +
A [[Address|Bitcoin address]] mathematically corresponds to a public key and looks like this:
 +
 
 +
:1PHYrmdJ22MKbJevpb3MBNpVckjZHt89hz
 +
 
 +
Each person can have many such addresses, each with its own balance, which makes it very difficult to know which person owns what amount. In order to protect his [[Anonymity|privacy]], Bob can generate a new public-private key pair for each individual receiving transaction and the Bitcoin software encourages this behavior by default. Continuing the example from above, when Charlie receives the bitcoins from Bob, Charlie will not be able to identify who owned the bitcoins before Bob.
 +
 
 +
===Capitalization / Nomenclature===
 +
 
 +
Since Bitcoin is both a currency and a protocol, capitalization can be confusing. Accepted practice is to use ''Bitcoin'' (singular with an upper case letter B) to label the protocol, software, and community, and ''bitcoins'' (with a lower case b) to label units of the currency.
 +
 
 +
==Where to see and explore==
 +
 
 +
You can directly explore the system in action by visiting [https://btc.com/ BTC.com], [https://www.biteasy.com/ Biteasy.com], [https://blockchain.info/ Blockchain.info], [http://btc.blockr.io/ Blokr.io Bitcoin Block Explorer] or [https://blockexplorer.com/ Bitcoin Block Explorer].
 +
The site shows you the latest blocks in the block chain. The [[Block_chain|block chain]] contains the agreed history of all transactions that took place in the system.
 +
Note how many blocks were generated in the last hour, which on average will be 6. Also notice the number of transactions and the total amount transferred in the last hour (last time I checked it was about 64 and 15K).
 +
This should give you an indication of how active the system is.
 +
 
 +
Next, navigate to one of these blocks.
 +
The block's [[hash]] begins with a run of zeros. This is what made creating the block so difficult; a hash that begins with many zeros is much more difficult to find than a hash with few or no zeros. The computer that generated this block had to try many ''Nonce'' values (also listed on the block's page) until it found one that generated this run of zeros.
 +
Next, see the line titled ''Previous block''. Each block contains the hash of the block that came before it. This is what forms the chain of blocks.
 +
Now take a look at all the transactions the block contains. The first transaction is the income earned by the computer that generated this block. It includes a fixed amount of coins created out of "thin air" and possibly a fee collected from other transactions in the same block.
 +
 
 +
Drill down into any of the transactions and you will see how it is made up of one or more amounts coming in and out.
 +
Having more than one incoming and outgoing amount in a transaction enables the system to join and break amounts in any possible way, allowing for any fractional amount needed. Each incoming amount is a past transaction (which you can also view) from someone's address, and each outgoing amount is addressed to someone and will be part of a future transaction (which you can also navigate down into if it has already taken place.)
 +
 
 +
Finally, you can follow any of the [[Address|addresses]] links and see what public information is available for them.
 +
 
 +
To get an impression of the amount of activity on the Bitcoin network, you might like to visit the monitoring websites [[Bitcoin Monitor]] and [[Bitcoin Watch]]. The first shows a real-time visualization of events on the Bitcoin network, and the second lists general statistics on the amount and size of recent transactions.
 +
 
 +
===How many people use Bitcoin?===
 +
 
 +
This is quite a difficult question to answer accurately. One approach is to count how many bitcoin clients connected to the network in the last 24 hours. We can do this because some clients transmit their addresses to the other members of the network periodically;
 +
 
 +
*In September 2011, this method suggested that there were about {{formatnum:60000}} users.
 +
 
 +
*In October 2014, according to [https://www.coindesk.com/state-of-bitcoin-q3-2014-report-maturing-ecosystem-price-pressure/ Coindesk report] there were more than 7.5 million bitcoin wallets.
 +
 
 +
*In October 2016, according to [https://Blockchain.info blockchain.info] user counts based on Blockchain wallet, there are about 8.8 mln registered Bitcoin users on its platform. [https://cointelegraph.com/news/counting-them-all-how-to-figure-out-actual-number-of-bitcoin-users Cointelegraph report]
 +
 
 +
*According to [https://blockchain.info/charts/my-wallet-n-users blockchain.info], from October 2016 till January 2018 the Bitcoin user base has almost tripled for total of 22 million users.
 +
 
 +
==See Also==
 +
* [http://bitcoinhelp.net Bitcoin Help] &mdash; the simple guide to Bitcoin.
 +
* Learn the entire history of Bitcoin in the interactive timeline at [http://historyofbitcoin.org History of Bitcoin].
 +
* [https://www.weusecoins.com What Is Bitcoin?]
 +
* [https://www.bitcoinmining.com What Is Bitcoin Mining?]
 +
 
 +
[[zh-cn:简介]]
 +
 
 +
[[de:Einführung]]
 +
[[fr:Introduction]]

Latest revision as of 10:00, 3 December 2019

The purpose of this page is to provide a general overview of the Bitcoin system and economy.

Basic Concepts

Currency

Alice wants to buy the Alpaca socks which Bob has for sale. In return, she must provide something of equal value to Bob. The most efficient way to do this is by using a medium of exchange that Bob accepts which would be classified as currency. Currency makes trade easier by eliminating the need for coincidence of wants required in other systems of trade such as barter. Currency adoption and acceptance can be global, national, or in some cases local or community-based.

Banks

Alice need not provide currency to Bob in-person. She may instead transfer this value by first entrusting her currency to a bank who promises to store and protect Alice's currency notes. The bank gives Alice a written promise (called a "bank statement") that entitles her to withdraw the same number of currency bills that she deposited. Since the money is still Alice's, she is entitled to do with it whatever she pleases, and the bank (like most banks), for a small fee, will do Alice the service of passing on the currency bills to Bob on her behalf. This is done by Alice's bank by giving the dollar bills to Bob's bank and informing them that the money is for Bob, who will then see the amount the next time he checks his balance or receives his bank statement.

Since banks have many customers, and bank employees require money for doing the job of talking to people and signing documents, banks in recent times have been using machines such as ATMs and web servers that do the job of interacting with customers instead of paid bank employees. The task of these machines is to learn what each customer wants to do with their money and, to the extent that it is possible, act on what the customer wants (for example, ATMs can hand out cash). Customers can always know how much money they have in their accounts, and they are confident that the numbers they see in their bank statements and on their computer screens accurately reflect the number of dollars that they can get from the bank on demand. They can be so sure of this that they can accept those numbers in the same way they accept paper banknotes (this is similar to the way people started accepting paper dollars when they had been accepting gold or silver).

Such a system has several disadvantages:

  • It is costly. EFTs in Europe can cost 25 euros. Credit transactions can cost several percent of the transaction.
  • It is slow. Checking and low cost wire services take days to complete.
  • In most cases, it cannot be anonymous.
  • Accounts can be frozen, or their balance partially or wholly confiscated.
  • Banks and other payment processors like PayPal, Visa, and Mastercard may refuse to process payments for certain legal entities.


Bitcoin is a system of owning and voluntarily transferring amounts of so-called bitcoins, in a manner similar to an on-line banking, but pseudonymously and without reliance on a central authority to maintain account balances. If bitcoins are valuable, it is because they are useful and limited in supply.

Bitcoin Basics

Creation of coins

The creation of coins must be limited for the currency to have any value.

New coins are slowly mined into existence by following a mutually agreed-upon set of rules. A user mining bitcoins is running a software program that searches for a solution to a very difficult math problem the difficulty of which is precisely known. This difficulty is automatically adjusted on a predictable schedule so that the number of solutions found globally for a given unit of time is constant: the global system aims for 6 per hour. When a solution is found, the user may tell everyone of the existence of this newly found solution along with other information packaged together in what is called a "block". The solution itself is a proof-of-work or PoW. It is hard to find, but easy to verify.

Blocks create 12.5 new bitcoins at present [October 2016]. This amount, known as the block reward, is an incentive for people to perform the computation work required for generating blocks. Roughly every 4 years, the number of bitcoins that can be "mined" in a block reduces by 50%. Originally the block reward was 50 bitcoins; it halved in November 2012; it then halved again in July 2016. Any block that is created by a malicious user that does not follow this rule (or any other rules) will be rejected by everyone else. In the end, no more than 21 million bitcoins will ever exist.

Because the block reward will decrease over the long term, miners will some day instead pay for their hardware and electricity costs by collecting transaction fees. The sender of money may voluntarily pay a small transaction fee which will be kept by whoever finds the next block. Paying this fee will encourage miners to include the transaction in a block more quickly.

Sending payments

To guarantee that a third-party, let's call her Eve, cannot spend other people's bitcoins by creating transactions in their names, Bitcoin uses public key cryptography to make and verify digital signatures. In this system, each person, such as Alice or Bob, has one or more addresses each with an associated pair of public and private keys that they may hold in a wallet. Only the user with the private key can sign a transaction to give some of their bitcoins to somebody else, but anyone can validate the signature using that user’s public key.

Suppose Alice wants to send a bitcoin to Bob.

  • Bob sends his address to Alice.
  • Alice adds Bob’s address and the amount of bitcoins to transfer to a message: a 'transaction' message.
  • Alice signs the transaction with her private key, and announces her public key for signature verification.
  • Alice broadcasts the transaction on the Bitcoin network for all to see.

(Only the first two steps require human action. The rest is done by the Bitcoin client software.)

Looking at this transaction from the outside, anyone who knows that these addresses belong to Alice and Bob can see that Alice has agreed to transfer the amount to Bob, because nobody else has Alice's private key. Alice would be foolish to give her private key to other people, as this would allow them to sign transactions in her name, removing funds from her control.

Later on, when Bob wishes to transfer the same bitcoins to Charley, he will do the same thing:

  • Charlie sends Bob his address.
  • Bob adds Charlie's address and the amount of bitcoins to transfer to a message: a 'transaction' message.
  • Bob signs the transaction with his private key, and announces his public key for signature verification.
  • Bob broadcasts the transaction on the Bitcoin network for all to see.

Only Bob can do this because only he has the private key that can create a valid signature for the transaction.

Eve cannot change whose coins these are by replacing Bob’s address with her address, because Alice signed the transfer to Bob using her own private key, which is kept secret from Eve, and instructing that the coins which were hers now belong to Bob. So, if Charlie accepts that the original coin was in the hands of Alice, he will also accept the fact that this coin was later passed to Bob, and now Bob is passing this same coin to him.

Preventing double-spending

The process described above does not prevent Alice from using the same bitcoins in more than one transaction. The following process does; this is the primary innovation behind Bitcoin.

  • Details about the transaction are sent and forwarded to all or as many other computers as possible.
  • A constantly growing chain of blocks that contains a record of all transactions is collectively maintained by all computers (each has a full copy).
  • To be accepted in the chain, transaction blocks must be valid and must include proof of work (one block generated by the network every 10 minutes).
  • Blocks are chained in a way so that, if any one is modified, all following blocks will have to be recomputed.
  • When multiple valid continuations to this chain appear, only the longest such branch is accepted and it is then extended further.

When Bob sees that his transaction has been included in a block, which has been made part of the single longest and fastest-growing block chain (extended with significant computational effort), he can be confident that the transaction by Alice has been accepted by the computers in the network and is permanently recorded, preventing Alice from creating a second transaction with the same coin. In order for Alice to thwart this system and double-spend her coins, she would need to muster more computing power than all other Bitcoin users combined.

Anonymity

When it comes to the Bitcoin network itself, there are no "accounts" to set up, and no e-mail addresses, user-names or passwords are required to hold or spend bitcoins. Each balance is simply associated with an address and its public-private key pair. The money "belongs" to anyone who has the private key and can sign transactions with it. Moreover, those keys do not have to be registered anywhere in advance, as they are only used when required for a transaction. Transacting parties do not need to know each other's identity in the same way that a store owner does not know a cash-paying customer's name.

A Bitcoin address mathematically corresponds to a public key and looks like this:

1PHYrmdJ22MKbJevpb3MBNpVckjZHt89hz

Each person can have many such addresses, each with its own balance, which makes it very difficult to know which person owns what amount. In order to protect his privacy, Bob can generate a new public-private key pair for each individual receiving transaction and the Bitcoin software encourages this behavior by default. Continuing the example from above, when Charlie receives the bitcoins from Bob, Charlie will not be able to identify who owned the bitcoins before Bob.

Capitalization / Nomenclature

Since Bitcoin is both a currency and a protocol, capitalization can be confusing. Accepted practice is to use Bitcoin (singular with an upper case letter B) to label the protocol, software, and community, and bitcoins (with a lower case b) to label units of the currency.

Where to see and explore

You can directly explore the system in action by visiting BTC.com, Biteasy.com, Blockchain.info, Blokr.io Bitcoin Block Explorer or Bitcoin Block Explorer. The site shows you the latest blocks in the block chain. The block chain contains the agreed history of all transactions that took place in the system. Note how many blocks were generated in the last hour, which on average will be 6. Also notice the number of transactions and the total amount transferred in the last hour (last time I checked it was about 64 and 15K). This should give you an indication of how active the system is.

Next, navigate to one of these blocks. The block's hash begins with a run of zeros. This is what made creating the block so difficult; a hash that begins with many zeros is much more difficult to find than a hash with few or no zeros. The computer that generated this block had to try many Nonce values (also listed on the block's page) until it found one that generated this run of zeros. Next, see the line titled Previous block. Each block contains the hash of the block that came before it. This is what forms the chain of blocks. Now take a look at all the transactions the block contains. The first transaction is the income earned by the computer that generated this block. It includes a fixed amount of coins created out of "thin air" and possibly a fee collected from other transactions in the same block.

Drill down into any of the transactions and you will see how it is made up of one or more amounts coming in and out. Having more than one incoming and outgoing amount in a transaction enables the system to join and break amounts in any possible way, allowing for any fractional amount needed. Each incoming amount is a past transaction (which you can also view) from someone's address, and each outgoing amount is addressed to someone and will be part of a future transaction (which you can also navigate down into if it has already taken place.)

Finally, you can follow any of the addresses links and see what public information is available for them.

To get an impression of the amount of activity on the Bitcoin network, you might like to visit the monitoring websites Bitcoin Monitor and Bitcoin Watch. The first shows a real-time visualization of events on the Bitcoin network, and the second lists general statistics on the amount and size of recent transactions.

How many people use Bitcoin?

This is quite a difficult question to answer accurately. One approach is to count how many bitcoin clients connected to the network in the last 24 hours. We can do this because some clients transmit their addresses to the other members of the network periodically;

  • In September 2011, this method suggested that there were about 60,000 users.
  • In October 2014, according to Coindesk report there were more than 7.5 million bitcoin wallets.
  • According to blockchain.info, from October 2016 till January 2018 the Bitcoin user base has almost tripled for total of 22 million users.

See Also