Bitcoin is a collection of concepts and technologies that form the basis of a digital money ecosystem. Units of currency called bitcoins are used to store and transmit value among participants in the bitcoin network.
Communication and Accessibility
Bitcoin users communicate with each other using the bitcoin protocol primarily via the Internet, although other transport networks can also be used. The bitcoin protocol stack, available as open-source software, can be run on a wide range of computing devices, including laptops and smartphones, making the technology easily accessible.
Uses of Bitcoin
Users can transfer bitcoin over the network to do just about anything that can be done with conventional currencies, such as buying and selling goods, sending money to people or organizations, or extending credit. Bitcoin technology includes features that are based on encryption and digital signatures to ensure the security of the bitcoin network.
Bitcoin Exchange
Bitcoins can be purchased, sold, and exchanged for other currencies at specialized currency exchanges. Bitcoin, in a sense, is the perfect form of money for the Internet because it is fast, secure, and borderless.
The Virtual Nature of Bitcoins
Unlike traditional currencies, bitcoins are entirely virtual. There are no physical coins or even digital coins per se. The coins are implied in transactions that transfer value from sender to recipient.
Ownership and Control
Users of bitcoin own keys that allow them to prove ownership of transactions in the bitcoin network, unlocking the value to spend it and transfer it to a new recipient. Those keys are often stored in a digital wallet on each user’s computer. Possession of the key that unlocks a transaction is the only prerequisite to spending bitcoins, putting the control entirely in the hands of each user.
Bitcoin’s Peer-to-Peer System
Bitcoin is a fully-distributed, peer-to-peer system. As such, there is no “central” server or point of control. Bitcoins are created through a process called “mining,” which involves looking for a solution to a difficult problem.
Bitcoin Mining Process
Any participant in the bitcoin network (i.e., any device running the full bitcoin protocol stack) may operate as a miner, using their computer’s processing power to attempt to find solutions to this problem. Every 10 minutes on average, a new solution is found by someone who then is able to validate the transactions of the past 10 minutes and is rewarded with brand new bitcoins.
Decentralized Currency Issuance
Essentially, bitcoin mining decentralizes the currency-issuance and clearing functions of a central bank and replaces the need for any central bank with this global competition. The bitcoin protocol includes built-in algorithms that regulate the mining function across the network.
Dynamic Mining Difficulty
The difficulty of the problem that miners must solve is adjusted dynamically so that, on average, someone finds a correct answer every 10 minutes regardless of how many miners (and CPUs) are working on the problem at any moment. The protocol also halves the rate at which new bitcoins are created every 4 years, and limits the total number of bitcoins that will be created to a fixed total of 21 million coins.
Bitcoin’s Deflationary Nature
The result is that the number of bitcoins in circulation closely follows an easily predictable curve that reaches 21 million by the year 2140. Due to bitcoin’s diminishing rate of issuance, over the long term, the bitcoin currency is deflationary. Furthermore, bitcoin cannot be inflated by “printing” new money above and beyond the expected issuance rate.
Bitcoin as a Distributed Computing Innovation
Behind the scenes, bitcoin is also the name of the protocol, a network, and a distributed computing innovation. The bitcoin currency is really only the first application of this invention. As a developer, I see bitcoin as akin to the Internet of money, a network for propagating value and securing the ownership of digital assets via distributed computation. There’s a lot more to bitcoin than first meets the eye.
Getting Started with Bitcoin
In this chapter, we’ll get started by explaining some of the main concepts and terms, getting the necessary software, and using bitcoin for simple transactions. In following chapters, we’ll start unwrapping the layers of technology that make bitcoin possible and examine the inner workings of the bitcoin network and protocol.