SI 486I Spring 2022 / Notes


This is the archived website of SI 486I from the Spring 2022 semester. Feel free to browse around; you may also find more recent offerings at my teaching page.

Unit 5: Cryptographic puzzles and mining

1 Summary and Goals

“Mining” is the process by which a new block is added to the blockchain. The name comes from the fact that there is generally a reward paid to whoever mines the next block, and from the fact that mining a block is hard (but not impossible).

In this unit, we will dive in to what mining means in a proof of work system such as Bitcoin: what are the “puzzles” that are solved for mining, how are those puzzles actually solved and verified, how is the difficulty updated over time, and what does this all mean for the blockchain itself.

2 Required reading

  1. Chapter 2 of Narayanan et al, which starts on page 51 of this pdf. Most especially you need to read section 2.4 on Incentives and Proof of Work.

This book chapter explains the technical and “social engineering” (i.e., economics) side of how mining works, and why anyone is actually incentivized to participate in it and do it correctly.

3 Take-aways

Here are some questions you should be able to answer after doing this reading:

  • What problems would arise in a blockchain if we did not have consensus?
  • How does a proof of work help achieve consensus besides just including the hash of the previous block?
  • What is the proof of work “puzzle” being solved to mine new blocks in the Bitcoin network?
  • What is “halving” and how does it ensure a total cap on the number of bitcoins that will ever be created?