Bitcoin - The Invisible Gold


Bitcoin, the pioneer of blockchain technology, started a revolution by introducing the first fully decentralized digital currency. While it has proven to be secure and valuable, Bitcoin is known for its instability and high volatility.

Since its inception in 2008 by Satoshi Nakamoto, Bitcoin has gained widespread popularity and is currently the leading digital currency globally, attracting billions of dollars in investments.

Drawing on extensive research in cryptography, digital cash, and distributed computing, Bitcoin's development is rooted in decades of innovation. The following section offers a concise history of the foundational principles in the creation of Bitcoin.

History of Bitcoin

Bitcoin was first introduced in 2008 through a paper titled Bitcoin: A Peer-to-Peer Electronic Cash System, authored by Satoshi Nakamoto. The true identity of Nakamoto remains unknown, leading to much speculation as to who the real inventor of Bitcoin is.

Bitcoin's foundation is rooted in extensive research spanning decades. It incorporates various cryptographic and distributed computing techniques, such as Merkle trees, hash functions, and digital signatures. Additionally, concepts from previous works like BitGold, b-money, hashcash, and cryptographic time stamping laid the groundwork for Bitcoin's creation. By ingeniously combining ideas from these sources, Bitcoin became the world's first decentralized digital currency.

Bitcoin addresses several long-standing challenges in electronic cash and distributed systems, including the following problems −

  1. Byzantine generals problem
  2. Double-spending problem
  3. Sybil attacks

Bitcoin offers an elegant solution to these issues, making it a groundbreaking innovation in the realm of decentralized currencies.

Variation of Bitcoin value over the years

What is Bitcoin?

Bitcoin is a very complex entity, which includes a protocol, a digital currency, and a platform. It operates through a combination of a peer-to-peer network, protocols, and software that enables the generation and utilization of the digital currency. Within this peer-to-peer network, nodes communicate with each other utilizing the Bitcoin protocol.

Bitcoin comprises the following components −

  • Wallets (client software)
  • Digital keys
  • Addresses
  • Transactions
  • Miners
  • The Bitcoin network

These terms and areas are discussed in further sections of this chapter. Some of the broader concepts are beyond the contents of this tutorial, and the users can cover the basic concepts of Bitcoin via this chapter.

Bitcoin Wallet

We can use the Bitcoin Wallet to engage in real-life transactions in Bitcoin values. There are many terms that users might come across while conducting transactions in the Bitcoin Wallet, which are explained as follows −

  • Dimensions − This refers to the dimensions of the transaction in bytes.
  • Mass − This is the updated measurement provided for the block and transaction sizes following the implementation of the segregated witness (SegWit) soft fork version of Bitcoin.
  • Time of Receipt − This indicates the time at which the transaction was received.
  • Inclusion in Blocks − This displays the block number on the blockchain where the transaction has been included.
  • Verifications − This denotes the number of confirmations completed by miners for this transaction.
  • Overall Inputs − This represents the total number of inputs in the transaction.
  • Overall Outputs − This signifies the total number of outputs from the transaction.
  • Charges − This is the complete fee applied.
  • Fee per Byte − This value shows the total fee divided by the number of bytes in the transaction; for instance, 10 Satoshis per byte.
  • Fee per Mass Unit − For traditional transactions, this is computed using the total number of bytes * 4.

In the case of SegWit transactions, it is calculated by merging a SegWit marker, flag, and witness field as one mass unit, and each byte of the other fields as four mass units.

What are Crypto-Keys?

On the Bitcoin network, the possession and transfer of Bitcoins rely on private keys, public keys, and addresses. Elliptic Curve Cryptography (ECC) is utilized to create public and private key pairs within the Bitcoin network.

Here is a brief explanation −

Private Keys

Private keys must be securely stored and typically remain solely with the owner. They are utilized to digitally sign transactions, demonstrating ownership of the bitcoins. Private keys are essentially 256-bit numbers randomly selected within the range specified by the SECP256K1 ECDSA curve recommendation.

For example, the consider the following private key −

A3ED7EC8A03667180D01FB4251A546C2B9F2FE33507C68B7D9D4E1FA5714195201

When converted into WIF format, it looks as shown here −

L2iN7umV7kbr6LuCmgM27rBnptGbDVc8g4ZBm6EbgTPQXnj1RCZP

Public Keys

Public keys are stored on the blockchain for all network participants to view. These public keys are generated from private keys through a unique mathematical relationship.

When a transaction is signed with a private key and shared on the Bitcoin network, nodes utilize public keys to confirm that the transaction was indeed signed with the corresponding private key. This verification process establishes ownership of the bitcoin. Bitcoin employs ECC based on the SECP256K1 standard, utilizing an Elliptic Curve Digital Signature Algorithm (ECDSA) to safeguard funds and restrict spending to the rightful owner.

Addresses in Bitcoin

A Bitcoin address is generated by applying a two-step hashing process to the corresponding public key of a private key. First, the SHA256 algorithm is used, followed by the RIPEMD160 algorithm. The resulting 160-bit hash is then combined with a version number and encoded using the Base58Check encoding scheme.

Bitcoin addresses typically consist of 26-35 characters and start with the digits 1 or 3. An example of a typical Bitcoin address is −

1ANAguGG8bikEv2fYsTBnRUmx7QUcK58w

Currently, there are two types of addresses: P2PKH, which starts with the number 1, and P2SH, which starts with the number 3.

QR Code showing a random address of Bitcoin

Bitcoin addresses are often encoded in QR codes for easy distribution.