What is Bitcoin?
Bitcoin is often explained by comparing it to something specific people already know, but this is often what creates a lot of confusion. Bitcoin is a new technology that is unlike anything we have seen before, so a better way to think of it is as a combination of a few different things we are already used to:
- It allows you to move money very easily
- Bitcoin is in some sense similar to gold – that is why many people even refer to it as ‘digital gold’ or ‘Gold 2.0’. Think of it as using gold for money, except it also very easy to move.
- Bitcoin is like the internet in that no single person or entity controls it, so anyone can use it as they like. This gives it some very unique characteristics.
Where does ‘Bitcoin’ come from?
Bitcoin was ‘invented’ by a person or group of people using the name ‘Satoshi Nakamoto’. Does anyone know who this really is? Despite many articles and investigation to unmask the person(s), there is still no conclusive evidence of who they are. Does it matter? Not at all. Satoshi designed the entire Bitcoin system in an ‘open source’ manner – this means the code is available for everyone to inspect and see it, so there are no hidden secrets, and no influence on it from the creator.
It’s also worth mentioning that there is a common misconception that Satoshi invented Bitcoin all by himself. Like many big breakthroughs in sciences, Satoshi’s invention was built on the shoulders of giants. For the past few decades many top scientists, engineers and mathematicians were involved in research around cryptography, systems and so on. Satoshi managed to pull all of this work together into one coherent plan and then helped to start implement it. If you read the whitepaper you’ll even notice that he references all the other work on which he relied to complete his invention.
- Pioneering work on digital currencies prior to bitcoin was done by David Chaum, who published on blind signatures as the basis for untraceable electronic cash and mail throughout the 1980’s.
- Wei Dai proposed B-money in 1998, which contained the idea of generation of money through the solving of computational puzzles as well novel methods for reaching consensus among network participants.
- Adam Back introduced the Hashcash algorithm.
- Hal Finney later utilized Back’s hashcash when he introduced a reproducible proof of work (RPOW) token in 2005.
- Nick Szabo proposed Bit gold in 2008, a digital currency which utilizes a proof of work puzzle that is securely timestamped and contains links between transactions.
Public Key cryptography
Control of the Bitcoin currency BTC is governed by a pair of cryptographic digital keys known as the public and private keys. The public key is open to the public and can be used to create a unique Bitcoin Address where individuals may receive funds. The private key represents control and ownership over these funds enabling the private key holder to produce a digital signature which is essential for the transfer of bitcoins.
Private keys are a number chosen at random from numbers between 1 and 2256. The method used to generate this random number must not be reproducible by another party or the security of the key could be compromised. Good sources of entropy include the getnewaddress command on the Bitcoin Core client or flipping a coin. Pseudorandom methods, which appear to produce randomness but are created by a deterministic algorithm which can be reproduced and are not appropriate for private key generation.
Public keys are generated utilizing an elliptic-curve cryptography based multiplication of the private key. It is practically impossible to reverse engineer the private key from the public key without trying all 2256 possible values. Finally, the Bitcoin address is created from by performing a one-way cryptographic hashing. The SHA256 hash is used on the public key, followed by a RIPEMD160 hash and then a base58 encoding. This outputs the Bitcoin address itself, which is a string of 34 numbers and letters which can safely be made available to the public. Anyone can send Bitcoin directly to this public Bitcoin Address.
The creation & validation of transactions on the Bitcoin blockchain, along with the appending of these transactions to the Bitcoin blockchain, is the core feature of the Bitcoin network and most cryptocurrency in general. Transactions are created by the owner of the bitcoins, who generate a specific digital signature using the private keys to create a valid transaction. Any transaction broadcast to the network without a valid digital signature will not be validated and propagated by the honest nodes in the network and will fail to be added to the blockchain. All transactions in the Bitcoin blockchain are globally and publicly visible.
The Bitcoin transaction system is based on the unspent transaction outputs (UTXOs) model. A new UTXO is created each time a transaction is created in a new Bitcoin block with a new output. The UTXO is eliminated when the owner of the keys initiates a transaction which empties all of the Bitcoin.
There are a variety of assumptions made by the Bitcoin protocol in regard to transaction security and validity. The double spend attack or majority attack is possible when the attacker controls a larger portion of the mining power in the network, most effective at >50%. To date, no double spending attacks have occurred on Bitcoin, however multiple attacks on smaller chains such as Bitcoin Gold, Zencash, monacoin, and others have been successful. During the time that the attack controls this ability they are able to reverse specific arbitrary transactions by re-mining blocks with those transactions excluded. Thus cryptocurrency exchanges and others who accept large Bitcoin transactions typically wait for additional confirmation of blocks before relying on payment, as the cost to rewrite a transaction becomes larger the further back in the blockchain history it lies. The economic incentives for whether or not miners will benefit from attacking the network through a double spend rely on a number of factors and are actively debated.
In addition to the majority attack, there are lower thresholds of mining power required potentially only 33% of the network has rate to to perform other attacks such as selfish mining.