1
0
mirror of https://github.com/bitcoinbook/bitcoinbook synced 2024-11-22 16:18:11 +00:00
This commit is contained in:
Andreas M. Antonopoulos 2013-08-11 16:20:38 -07:00
parent 19e9d04327
commit 9ac34d621c

View File

@ -3,7 +3,13 @@
=== What is Bitcoin? === What is Bitcoin?
Bitcoin is digital money, a currency for and of the Internet. It is not owned or controlled by any company, group or country. It exists as a set of standards and reference software and as a running network with several thousand nodes worldwide. Behind the scenes, bitcoin is a network, a protocol, a standard and a currency. For now think of it simply as digital money that can be sent, received and stored by anyone, worldwide simply by downloading compatible software and joining a network. Bitcoin is digital money, a currency for and of the Internet. More specifically, bitcoin is digital cash, the value itself encoded digitally and transferred from owner to owner.
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other money is digital too, but different - third party, counterparty risk.
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
It is not owned or controlled by any company, group or country. It exists as a set of standards and reference software and as a running network with several thousand nodes worldwide. Behind the scenes, bitcoin is a network, a protocol, a standard and a currency. For now think of it simply as digital money that can be sent, received and stored by anyone, worldwide simply by downloading compatible software and joining a network.
Under the hood, bitcoin is the culmination of decades of research in cryptography and distributed systems and represents four key innovations brought together in a unique and powerful combination. Bitcoin consists of a de-centralized peer-to-peer network, a public transaction ledger, a de-centralized mathematical and deterministic currency issuance, a de-centralized transaction verification system and a set of powerful APIs. All of these are "bitcoin", and each of these aspects of bitcoin will be examined in this book. Under the hood, bitcoin is the culmination of decades of research in cryptography and distributed systems and represents four key innovations brought together in a unique and powerful combination. Bitcoin consists of a de-centralized peer-to-peer network, a public transaction ledger, a de-centralized mathematical and deterministic currency issuance, a de-centralized transaction verification system and a set of powerful APIs. All of these are "bitcoin", and each of these aspects of bitcoin will be examined in this book.
@ -27,7 +33,6 @@ $1.50 USD
0.015 BTC 0.015 BTC
---- ----
Or Bob might say _"That's one-dollar-fifty, or fifteen milibits"_. Or Bob might say _"That's one-dollar-fifty, or fifteen milibits"_.
Alice would use a smartphone to scan the barcode on display and send the payment. Her smartphone would show a payment of +0.0150 BTC+ to +Bob's Cafe+ and she would select +Send+ to authorize the payment. Within a few seconds (about the same time as a credit card authorization), Bob would see the transaction on the register, completing the transaction. Alice has purchased a cup of coffee for 15 millibits (or 0.015 bitcoin) Alice would use a smartphone to scan the barcode on display and send the payment. Her smartphone would show a payment of +0.0150 BTC+ to +Bob's Cafe+ and she would select +Send+ to authorize the payment. Within a few seconds (about the same time as a credit card authorization), Bob would see the transaction on the register, completing the transaction. Alice has purchased a cup of coffee for 15 millibits (or 0.015 bitcoin)
@ -39,8 +44,23 @@ In the USA, it is customary to tip 20% for good service at coffee shops. Alice m
==== A currency ==== A currency
Bitcoin is a currency, the operates much like any "foreign" currency. The main difference is that it is not issued by a national government. Bitcoin currency units are called "bitcoins". Unlike traditional currencies, bitcoins are divisible to much smaller units. The smallest unit is the _satoshi_, one hundred-millionth of a bitcoin (1/100,000,000). Bitcoin can be exchanged for other currencies at specialized currency exchanges that support crypto-currencies like bitcoin. There, a customer can exchange US dollars ($) or Euros (E) for bitcoin, at the prevailing market exchange rate. Bitcoin is a currency, the operates much like any "foreign" currency. The main difference is that it is not issued by a national government. Bitcoin currency units are called "bitcoins". Unlike traditional currencies, bitcoins are divisible to much smaller units. The smallest unit is the _satoshi_, one hundred-millionth of a bitcoin (1/100,000,000). Bitcoin can be exchanged for other currencies at specialized currency exchanges that support crypto-currencies like bitcoin. There, a customer can exchange US dollars ($) or Euros () for bitcoin, at the prevailing market exchange rate.
Symbols: B⃦, Ƀ, ฿
Currency Code: BTC (unofficial), XBT (possible ISO standard)
[[table_bitcoinunits]]
[options="header"]
|=======
| Unit Name | Notation | Value
| bitcoin | BTC or B⃦ | 1 BTC
| millibitcoin | mBTC or mB⃦ | 0.001 BTC or 1/1000th
| microbitcoin | μBTC or μB⃦| 0.000001 BTC or 1/1m
| satoshi | | 0.00000001 BTC or 1/100m
|=======
Table of bitcoin units from bitcoin wiki (link:$$https://en.bitcoin.it/wiki/Units$$[])
==== A network and protocol ==== A network and protocol
@ -48,9 +68,6 @@ Bitcoin is a currency, the operates much like any "foreign" currency. The main d
Bitcoin operates on top of a peer-to-peer network, also called "bitcoin". The bitcoin network is used to propagate transactions, new blocks and alert messages. The network operates using a relatively simple network protocol for peer discovery and blockchain replication. Bitcoin operates on top of a peer-to-peer network, also called "bitcoin". The bitcoin network is used to propagate transactions, new blocks and alert messages. The network operates using a relatively simple network protocol for peer discovery and blockchain replication.
[[table_units]]
table of bitcoin units from bitcoin wiki
One interesting feature of bitcoin is that the issuance of the currency decreases automatically over time, halving every four years, reaching an absolute maximum of 21 million bitcoins issued sometime around the year 2140. One interesting feature of bitcoin is that the issuance of the currency decreases automatically over time, halving every four years, reaching an absolute maximum of 21 million bitcoins issued sometime around the year 2140.
[[chart_bitcoin_decreasing_issuance]] [[chart_bitcoin_decreasing_issuance]]
@ -101,20 +118,92 @@ The reference bitcoin software implementation, known as the _Satoshi Client_ and
=== Getting Bitcoin === Getting Bitcoin
There are many different implementations of bitcoin, from the front-end user interface to various libraries, servers and bitcoin network nodes.
The reference implementation of bitcoin, which combines a full bitcoin network node, a wallet and a user interface is known as the _Satoshi Client_, or also as its executable name +bitcoind+ on Unix-like systems and +bitcoin-qt+ for the graphical user interface component. The Satoshi client is maintained by a network of volunteers as an open source project hosted on Github link:$$https://github.com/bitcoin/bitcoin$$[].
==== Full node client or lightweight client?
A full node client is one that stores a local copy of the entire blockchain (the distributed transaction ledger), from the first block (the _Genesis Block_) to the most current block. The blockchain is usually stored in a database, to make indexing and retrieval easier. It is a multi-gigabyte file, at least 8GB at this time. As a result, a full-node client may take several days and quite a bit of disk space to become fully "synchronized" with the network, meaning it has downloaded a full copy of the blockchain up to the most recent block.
By comparison, a lightweight client does not store a full copy of the blockchain. Instead, it relies on selected trusted servers which can answer queries about the blockchain. As a result, a lightweight client can bootstrap instantly and start processing transactions. However, a lightweight client is always reliant on an external trusted source of data on the blockchain, whereas a full node client can independently validate any transaction without trusted third parties or the counterparty risks they introduce.
==== Desktop, mobile, web or hybrid wallet?
Bitcoin clients exist in many forms, and for many platforms. The examples in this book will use the reference client as well as several other desktop, mobile and web examples. For practical bitcoin use you may want to try a desktop, mobile and web wallet, or a web/mobile hybrid.
[TIP]
============================================================================
For the purposes of following the examples in this book, we recommend you download and install several bitcoin clients, to compare their capabilities and try out the examples. You must at least download the reference client +bitcoin+, as well as a lightweight client such as Electrum, or Multibit.
============================================================================
==== Obtaining the bitcoin software ==== Obtaining the bitcoin software
==== bitcoin-qt, bitcoind
==== mobile client ===== Reference Client
Versions for Windows, Mac, Linux and source code can be found at link:$$http://bitcoin.org/en/download$$[]
===== Mobile client
On Android, you can find many bitcoin clients by searching for "bitcoin wallet" in the official application market. The most notable are:
* Andreas Shildbach's Android Bitcoin Wallet link:$$https://play.google.com/store/apps/details?id=de.schildbach.wallet$$[]
* Mycelium light-weight node link$$https://play.google.com/store/apps/details?id=com.mycelium.wallet$$[]
* Blockchain.info hybrid web/mobile wallet link:$$https://play.google.com/store/apps/details?id=piuk.blockchain.android$$[]
Due to restrictions by Apple, there are no wallet applications for iOS. However, you can use web wallets in your iOS browser.
===== Web wallets
TBD
Risks? Control?
=== History of bitcoin === History of bitcoin
==== A brief history of money ==== A brief history of money
Money is a means of transferring or storing wealth, at its most basic. It exists in many abstract forms, least abstract (food) to highly abstract (personal cheque). Money has existed for thousands of years. The earliest form of money, recorded as an abstract account of value in written form, is heads of cattle. This is also the origin of the word "capital". Of course, a cow is not abstract, you can eat it. Very early in recorded history we see the emergence of money as an abstract token that represents some other value. Various cultures have used shells, coconuts, beans, salt, spices, feathers etc. These abstract forms of money may hold no inherent value but act only as a representation of value. Abstract forms of money are usually:
* Lightweight and portable
* Hard to counterfeight
* Scarce in the local environment
* etc
Precious metals have been the predominant currency for thousands of years across the world, usually stamped into coins. Modern paper money started as representative of precious metal deposits, but is now representative of treasury debt issued by the central governments. National currencies are issued by government "fiat" and are commonly referred to as _fiat currencies_ by economists. Most of what we consider common features of our monetary system are really only recent inventions, of the late 20th century.
==== A brief history of crypto currencies ==== A brief history of crypto currencies
Crypto-currencies are digital currencies based on cryptography. The development of crypto currencies started in ...... Essentially, crypto currencies aim to achieve an entirely abstract digital currency, one whose value can be transmitted digitally to a party as payment itself. There are two core challenges with a purely digital currency: how do you control the creation of new currency units and how do you prevent copying or counterfeiting.
==== Public key cryptography and crypto-currency ==== Public key cryptography and crypto-currency
Public-key cryptography, or assymetric cryptography, solves a key problem of a purely digital currency, by allowing /..../
==== Peer-to-Peer networks ==== Peer-to-Peer networks
==== Why would I use bitcoin ==== Why would I use bitcoin
===== As a merchant ===== As a merchant
Bitcoin's transaction fees are relatively flat and extremely low, compared to traditional payment networks. The current fee implementation is based on the size of a transaction's storage entry in the blockchain in bytes, with most transactions simply accepting the minimum fee of 0.5 millibits, or approximately 5 US cents at the time of writing, much lower than any other payment system.
Unlike traditional payment systems, bitcoin offers irreversible payments. Once a transaction is confirmed in the blockchain, the bitcoins are locked with the merchant keys and _cannot_ be reversed by anyone. This is especially important for merchants who operate online or shipping-based businesses, where a reversed charge on shipped merchandise is a significant and recurring problem.
===== As a consumer ===== As a consumer
===== As a developer, integrator ===== As a developer, integrator
Bitcoin is a developer's paradise. Where traditional banking and payment systems depend on exclusion as the means of securing the systems, bitcoin uses computation as the basis for its trust model. As a result, the network, protocol, transaction language and APIs are completely open and anyone can interact with the entire bitcoin system at any level. There is a wealth of progrmmatic interfaces at every layer, allowing developers and integrators to mash, code, hack and interface with bitcoin's internals.
===== As an entrepreneur ===== As an entrepreneur
Bitcoin represents a new frontier, and they need everything (quote)
===== As an investor ===== As an investor
Bitcoin is a strange assrt class. It's not exactly a commodity, a currency, a stock or a fund. It is a bit of all of those and more, an asset class unto itself. Furthermore, there are other crypto-currencies and they can be traded for each other. Crypto currencies are a whole new world of asset classes that underpin independent and low-friction online economies.