An Introduction to Bitcoin

Lecture notes on Bitcoin in preparation for a Autumn 2018 course on cryptocurrencies at IIT Bombay

Version 0.1 (Oct 4, 2017): Download PDF

Table of contents
  1. Introduction
  2. Elliptic Curve Cryptography
    1. Groups
    2. Fields
    3. Elliptic Curves over Real Numbers
    4. Elliptic Curves over Finite Fields
    5. ECDSA
  3. Cryptographic Hash Functions
    1. SHA-256
    2. RIPEMD-160
    3. P2PKH Addresses
  4. The Blockchain
    1. Rewarding Blockchain Updation
    2. The Block Header
    3. Mining
    4. Bitcoin Transactions
    5. Bitcoin Ownership
    6. Double Spending Attacks
    7. Blockchain Integrity
    8. The 51% Attacker
    9. Summary
  5. Bitcoin Transactions
    1. Block Format
    2. Pre-SegWit Regular Transactions
    3. Pre-SegWit Coinbase Transactions
    4. Bitcoin Script
    5. Pre-SegWit Standard Scripts
    6. Pre-SegWit Signature Generation
    7. Transaction Malleability
    8. SegWit Standard Scripts
    9. SegWit Regular and Coinbase Transactions
    10. SegWit Signature Generation
    11. Block Size and Sigop Limits
  6. Contracts
    1. Escrow
    2. Micropayments
    3. Decentralized Lotteries
  7. Bitcoin Development
    1. Bitcoin Improvement Proposals
    2. Hard and Soft Forks