Bitcoin is the world’s first decentralized currency. Satoshi Nakamoto, its perceived creator, describes it as a peer-to-peer version of electronic cash system. This system would allow online payments to be sent directly from one person to another without having to go through a financial institution.
Financial institutions are expensive in that they apply much more transaction costs. They are trusted as third parties to process electronic payments. They may be needed as mediators in cases of reversible transactions. Physical currency can be used to avoid some of these uncertainties of cost of payments.
The Advent Of Cryptographic Transactions
This is where transactions of cryptographic proof come in. This makes it possible for willing parties to transact without the need for trusted third parties. These transactions are hard to reverse and protect sellers from fraud. They also protect buyers with an escrow mechanism. There is a network that time-stamps transactions into a chain of hash-based proof of work or transactions. These transactions cannot be changed or altered without redoing the whole chain of work.
An electronic coin is a chain of digital signatures. Transfers of the coins are made by individually signing a hash of previous transactions and the public key to the next owners. The payee then verifies the signatures to verify the chain of ownership. To verify that a coin has not been double spent, a mint is used. Coins must be returned to the mint to issue new coins. Coins only issued from the mint are trusted not to be double spent. The mint is a way of tracking Bitcoin. Every transaction has to go through the Mint company. The mint becomes aware of all transactions and is aware of which came first. This reduces the worries of double spending. It provides proof of transactions.
A time stamp is given by a times-tamp server. It works by publishing a hash of a block of items widely like in a newspaper. Each timestamp has a previous hash with every additional hash confirming the one before it, forming a chain. For the Bitcoin timestamps, there is an increment of nonce in blocks until values are found. These values found have to give the required zero bits to a block’s hash. Once there is proof-of-work, the blocks cannot be changed without having to redo the work.
New transactions are sent to all nodes and each node collects the transactions into a block. The different nodes then find proof-of-work for each block. The blocks are then broadcasted to all nodes. The nodes then accept blocks if and when the transactions are valid and not double spent. The nodes create the next blocks in the chain. They use the hash of the previous hash as the hash of the accepted block.
The longest chains are considered the correct ones and the nodes will work on extending them. If there are two different versions, the nodes work on the first one while saving the second one. If the second becomes longer, the nodes will switch to it.
If nodes have not received a block, they will request when they realize they missed one. A user needs to only keep a copy of block headers. They can get that by requesting for the longest chain from network nodes.