The bitcoin protocol
Like email, bitcoin is a protocol. Where email is a protocol for sending messages over the internet, bitcoin is a protocol for sending money over the internet. The bitcoin protocol defines the rules of a payment network, called bitcoin, that uses a currency, also called bitcoin, to pay computers around the world for securing the network. The software that implements the bitcoin protocol uses a special branch of mathematics called cryptography to ensure the security of every bitcoin transaction.
The rules of the bitcoin protocol include the requirement that a user cannot send the same bitcoin more than once and a user cannot send bitcoin from an address for which they do not possess the private key. If a user tries to create a transaction that breaks the rules of the bitcoin protocol, it will automatically be rejected by the rest of the bitcoin network.
Bitcoin ownership is secured by a special code called a cryptographic key pair. Each key pair is made of two keys: a public key and a private key. The public key is transformed into a “bitcoin address” that is used to receive bitcoin transactions. The private key is used to make a digital signature that sends bitcoin from one address to another.
A bitcoin address looks like this:
Bitcoin addresses are often turned into QR codes so they can easily be scanned by a smartphone camera:
(Note: bitcoin sent to that address cannot be spent, so don’t try it unless you like throwing away money!)
Like an email address, a bitcoin address can be shared with anyone that the owner wants to receive a bitcoin payment from. Private keys, on the other hand, should not be shared. Anyone who possesses the private key to a bitcoin address can spend the bitcoin sent to that address.
Bitcoin wallets are software applications that implement the rules of the bitcoin protocol to ensure that users can easily and securely send and receive bitcoin transactions. Bitcoin wallets also show information about each transaction that is relevant to the wallet, including transactions sent and received by the wallet.
To receive payments, a wallet will usually generate a new address for each transaction. To send payments, the wallet will digitally sign transactions with the correct private keys and broadcast transactions to the bitcoin network. Once a transaction is confirmed by the network, the wallet will no longer be able to spend the same bitcoins used in the transaction again.
The bitcoin network
The bitcoin network is made up of thousands of computers around the world called “bitcoin nodes” and “bitcoin miners”. Bitcoin is an open network, meaning anyone can run bitcoin software to become a bitcoin node or a bitcoin miner.
Bitcoin nodes set and enforce the rules of the bitcoin protocol, and bitcoin miners process transactions and add them into “blocks” that are confirmed by bitcoin nodes. The bitcoin protocol is designed to ensure that new blocks are created and confirmed approximately every ten minutes.
To secure each block of bitcoin transactions, bitcoin miners must use their computing power to solve a unique math problem provided by the bitcoin software. If a bitcoin miner can solve the math problem before any other bitcoin miner, they will win a “block reward” that consists of all the fees paid by each transaction included in their block, as well as newly generated bitcoin.
Bitcoin miners have a strong incentive to produce blocks that follow the rules of the bitcoin protocol. If a bitcoin miner produces a block that does not follow the rules of the bitcoin protocol, then bitcoin nodes will reject the block and the miner will lose out on their chance to win the block reward.