Bits to Bitcoin: How Our Digital Stuff Works

  • 6h 5m
  • Mark Stuart Day
  • The MIT Press
  • 2018

An accessible guide to our digital infrastructure, explaining the basics of operating systems, networks, security, and other topics for the general reader.

Most of us feel at home in front of a computer; we own smartphones, tablets, and laptops; we look things up online and check social media to see what our friends are doing. But we may be a bit fuzzy about how any of this really works. In Bits to Bitcoin, Mark Stuart Day offers an accessible guide to our digital infrastructure, explaining the basics of operating systems, networks, security, and related topics for the general reader. He takes the reader from a single process to multiple processes that interact with each other; he explores processes that fail and processes that overcome failures; and he examines processes that attack each other or defend themselves against attacks.

Day tells us that steps are digital but ramps are analog; that computation is about “doing something with stuff” and that both the “stuff” and the “doing” can be digital. He explains timesharing, deadlock, and thrashing; virtual memory and virtual machines; packets and networks; resources and servers; secret keys and public keys; Moore's law and Thompson's hack. He describes how building in redundancy guards against failure and how endpoints communicate across the Internet. He explains why programs crash or have other bugs, why they are attacked by viruses, and why those problems are hard to fix. Finally, after examining secrets, trust, and cheating, he explains the mechanisms that allow the Bitcoin system to record money transfers accurately while fending off attacks.

About the Author

Mark Stuart Day was Chief Scientist at Riverbed Technology for a decade and is currently Visiting Lecturer at MIT. With more than thirty patented inventions, he has also made technical contributions at Dropbox, IBM, Cisco, Digital, and BBN.

In this Book

  • Preface
  • Introduction
  • Steps
  • Processes
  • Names
  • Recursion
  • Limits—Imperfect Programs
  • Limits—Perfect Programs
  • Coordination
  • State, Change, and Equality
  • Controlled Access
  • Interrupts
  • Virtualization
  • Separation
  • Packets
  • Browsing
  • Failure
  • Software Failure
  • Reliable Networks
  • Inside the Cloud
  • Browsing Revisited
  • Attackers
  • Thompson's Hack
  • Secrets
  • Secure Channel, Key Distribution, and Certificates
  • Bitcoin Goals
  • Bitcoin Mechanisms
  • Looking Back