Blockchain Reading List
This is a list of readings (and watchings) on blockchain related topics.
Preamble
The word "blockchain" (or "block chain") started off as a more or less narrowly defined technical term.
It ("blockchain") later became a buzzword that represented anything related to BitCoin, alt-coins (ex: LiteCoin, Ethereum, etc), cryptocurrencies, etc.
And now that the word "blockchain" is on the verge of becoming a household name, it seems like it is starting to include what some others used to call "P2P", and are now calling "distributed computing".
(In some usages of the label "blockchain", neither blocks or hash lists seemed to be necessary for that thing to be called a "blockchain".)
This seems to somewhat mirror how previously the usage of the word "P2P" seemed to broaden and also include what others are calling "distributed computing".
(Although this time around, cryptography and various concepts of "money" seems to have prominence.)
Regardless, this document focuses on a more traditional definition of "blockchain".
But also includes some topics that the author of this document feels that, while not strictly about blockchains, will help provide readers with a deep(er) technical background that can be useful when working with or creating blockchain based technologies.
Audience
This document is targeted at technical people, who are looking to gain a deep understand of the concepts behind blockchain based technologies.
Topics
- Abstract Algebra
- Behavioral Science
- BitCoin
- Bit Gold
- B-Money
- Colored Coins
- Consensus
- Content Addressing
- Cryptocurrency
- Cryptography
- Distributed Computing
- Distributed Hash Tables
- eCash
- Error Detection and Correction
- Ethereum
- Handicap Principle
- Hashcash
- Hash Lists
- History (Cypherpunk)
- History (Open Source)
- Identity
- Mastercoin
- Money
- Onion Routing
- Paxos
- Peer-to-Peer Networks
- Privacy
- Proof-of-Stake
- Proof-of-Work
- Raft
- Rai
- Randomness
- Selfish Mining Attack
- Smart Contracts
- Solidity
- Sybil Attack
- Tamper Detection
- Trust Networks
- Worse Is Better
- Zero-Knowledge Proof Protocol
Abstract Algebra
- Abstract Algebra (Socratica), by Liliana de Castro, Michael Harrison, Hatch Harrison
Behavioral Science
-
Please, not another bias! An evolutionary take on behavioural economics, by Jason Collins
-
The Hidden Agenda of the Political Mind, by Jason Weeden, Robert Kurzban
-
Hierarchy in the Forest, by Christopher Boehm
-
The Biology of Moral Systems, by Richard D. Alexander
-
See also: Handicap Principle
BitCoin
-
Bitcoin: A Peer-to-Peer Electronic Cash System, by Satoshi Nakamoto
-
Annotated: "Bitcoin: A Peer-to-Peer Electronic Cash System", by Satoshi Nakamoto, Balaji Srinivasan, Et al.
-
How the Bitcoin protocol actually works, by Michael Nielsen
-
But how does bitcoin actually work?, by Grant Sanderson
-
Ever wonder how Bitcoin (and other cryptocurrencies) actually work?, by Grant Sanderson
-
Mastering Bitcoin, by Andreas M. Antonopoulos
-
Why Is It Taking 20 Minutes to Mine This Bitcoin Block?, by Russell OโConnor
-
OP_RETURN and the Future of Bitcoin, by Rich Apodaca
-
Hidden surprises in the Bitcoin blockchain and how they are stored: Nelson Mandela, Wikileaks, photos, and Python software, by Ken Shirriff
Bit Gold
- Bit gold, by Nick Szabo
B-Money
Colored Coins
Consensus
Content Addressing
-
MAGNET v0.1 (Draft Tech Overview/Spec), by Gordon Mohr
-
A URN Namespace For Identifiers Based on Cryptographic Hashes by Peter Thiemann
-
Trusty URIs: Verifiable, Immutable, and Permanent Digital Artifacts for Linked Data, by Tobias Kuhn, Michel Dumontier
-
See also: Distributed Hash Tables
Cryptocurrency
Cryptography
-
Everything you need to know about cryptography in 1 hour, by Colin Percival
-
$5 wrench attack, by Randall Munroe
-
Communication Theory of Secrecy Systems, by Claude Elwood Shannon
-
New Directions in Cryptography, by Whitfield Diffie, Martin E. Hellman
-
A Method for Obtaining Digital Signatures and Public-Key Cryptosystems, by Ronald Linn Rivest, Adi Shamir, Leonard Adleman
-
How RSA Works With Examples, by Barry Steyn
-
Why RSA Works: Three Fundamental Questions Answered, by Barry Steyn
-
Cryptographic Hash VS MAC: What You Need To Know, by Barry Steyn
-
End to End Encryption (E2EE) (Computerphile), by Mike Pound
-
Secret Key Exchange (Diffie-Hellman) (Computerphile), by Mike Pound
-
See also: Onion Routing, Randomness, Zero-Knowledge Proof Protocol
Distributed Computing
-
Perspectives on the CAP Theorem, by Seth Gilbert, Nancy A. Lynch
-
The Log: What every software engineer should know about real-time data's unifying abstraction, by Jay Kreps
-
Notes on Distributed Systems for Young Bloods, by Jeff Hodges
-
Immutability Changes Everything (video), by Pat Helland
-
Immutability Changes Everything (paper), by Pat Helland
-
Kafka: a Distributed Messaging System for Log Processing, by Jay Kreps, Neha Narkhede, Jun Rao
-
Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications, by Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan
-
Dynamo: Amazonโs Highly Available Key-value Store , by Giuseppe DeCandia, Deniz Hastorun, Madan Jampani, Gunavardhan Kakulapati, Avinash Lakshman, Alex Pilchin, Swaminathan Sivasubramanian, Peter Vosshall, Werner Vogels
-
MapReduce: Simplified Data Processing on Large Clusters, by Jeffrey Dean, Sanjay Ghemawat
-
The Chubby Lock Service for Loosely-Coupled Distributed Systems, by Mike Burrows
-
So, you want to trace your distributed system? Key design insights from years of practical experience by Raja R. Sambasivan, Rodrigo Fonseca, Ilari Shafer, Gregory R. Ganger
-
Dapper, a Large-Scale Distributed Systems Tracing Infrastructure, by Benjamin H. Sigelman, Luiz Andrรฉ Barroso, Mike Burrows, Pat Stephenson, Manoj Plakal, Donald Beaver, Saul Jaspan, Chandan Shanbhag
-
Queues Don't Fix Overload, by Fred Hebert
-
See also: Consensus, Peer-to-Peer Networks
Distributed Hash Tables
- Kademlia: A Peer-to-peer Information System Based on the XOR Metric, by Petar Maymounkov, David Maziรจres
eCash
-
Blind signatures for untraceable payments, by David Chaum
Error Detection and Correction
-
Information Theory & Coding (Computerphile), by David Brailsford
-
Multiple Dimension Error Correction (Computerphile), by David Brailsford
-
The Perfect Code (Computerphile), by David Brailsford
-
EXTRA BITS: More on Perfect Codes (Computerphile), by David Brailsford
Ethereum
-
Ethereum in 25 Minutes, by Vitalik Buterin
-
Ethereum Yellow Paper, by Gav Would, et al
-
Ethereum Beige Paper: Rewrite of the Yellowpaper in non-Yellowpaper syntax, by Micah Dameron
-
Mastering Ethereum, by Andreas M. Antonopoulos, Gavin Wood
-
See also: Solidity
Handicap Principle
- The Handicap Principle: A Missing Piece of Darwin's Puzzle, by Amotz Zahavi, Avishag Zahavi
Hashcash
- Hashcash - A Denial of Service Counter-Measure, by Adam Back
Hash Lists
- How to Time-Stamp a Digital Document, by Stuart Haber, W. Scott Stornetta
History (Cypherpunk)
-
A Cypherpunk's Manifesto, by Eric Hughes
-
The Crypto Anarchist Manifesto, by Timothy C. May
-
Cyphernomicon, by Timothy C. May
-
This Machine Kills Secrets, by Andy Greenberg
-
Crypto, by Steven Levy
History (Open Source)
-
The Cathedral and the Bazaar , by Eric Steven Raymond
-
Homesteading the Noosphere, by Eric Steven Raymond
-
The Wikipedia Revolution, by Andrew Lih
Identity
-
Identity Crisis: How Identification Is Overused and Misunderstood, by Jim Harper
-
Secrets and Lies: Digital Security in a Networked World, by Bruce Schneier
-
Secure Electronic Commerce: Building the Infrastructure for Digital Signatures and Encryption, by Warwick Ford, Michael S. Baum
-
Understanding Windows CardSpace: An Introduction to the Concepts and Challenges of Digital Identities , by Vittorio Bertocci, Garrett Serack, Caleb Baker
-
7 Laws of Identity by Kim Camerons,
-
Getting Started with OAuth 2.0, by Ryan Boyd
-
Digital Identity, by Phillip J. Windley
-
Identity Management: A Primer, by Graham Williamson, David Yip, Ilan Sharoni, Kent Spaulding
Mastercoin
-
Mastercoin: A Second-Generation Protocol on the Bitcoin Blockchain, by Vitalik Buterin
-
MasterCoin Complete Specification Version 1.0, by J.R. Willett
Money
-
Shelling Out: The Origins of Money, by Nick Szabo
-
The Ascent of Money: A Financial History of The World (Documentary), by Niall Ferguson
Onion Routing
-
Onion Routing (Computerphile), by Mike Pound
-
EXTRA BITS: Onion Routing (Computerphile), by Mike Pound
-
Tor: The Second-Generation Onion Router, by Roger Dingledine, Nick Mathewson, Paul Syverson
-
Circuit Fingerprinting Attacks: Passive Deanonymization of Tor Hidden Services, by Albert Kwon, Mashael AlSabah, David Lazar, Marc Dacier, Srinivas Devadas
Paxos
-
Neat Algorithms - Paxos, by Harry Brundage
-
The Paxos Algorithm, by Luis Quesada Torres
-
The Part-Time Parliament, by Leslie Lamport
Peer-to-Peer Networks
-
Understanding Churn in Peer-to-Peer Networks, by Daniel Stutzbach, Reza Rejaie
-
See also: BitCoin, Bit Gold, Distributed Hash Tables
Privacy
Proof-of-Stake
-
On Stake and Consensus, by Andrew Poelstra
-
Cryptocurrencies without Proof of Work, by Iddo Bentov, Ariel Gabizon, Alex Mizrahi
Proof-of-Work
- See also: Handicap Principle, Hashcash, Selfish Mining Attack
Raft
-
The Raft Consensus Algorithm, by Diego Ongaro, Et al.
-
Raft: Understandable Distributed Consensus, by Ben Johnson
-
In Search of an Understandable Consensus Algorithm (Extended Version), by Diego Ongaro, John Ousterhout
-
Tangaroa: a Byzantine Fault Tolerant Raft, by Christopher Copeland, Hongxia Zhong
Rai
-
Island Money, by Michael F. Bryan
-
The Rai Stones are huge stone wheels used as currency on the island of Yap, by Boban Docevski
Randomness
-
Uniform Non-Random Random Numbers, by Timothy Masters
-
TIFU by using Math.random(), by Mike Malone
-
The Lava Lamps That Help Keep The Internet Secure, by Tom Scott
Selfish Mining Attack
-
Majority is not Enough: Bitcoin Mining is Vulnerable, by Ittay Eyal and Emin G ฬun Sirer
-
See also: Proof-of-Work
Smart Contracts
-
The Idea of Smart Contracts, by Nick Szabo
Solidity
-
Solidity Bytecode and Opcode Basics, by Bernard Peh
Sybil Attack
- The Sybil Attack, by John R. Douceur
Tamper Detection
-
The Playdough Protocols, by Nick Szabo
-
See also: Hash Lists
Trust Networks
-
Advogato's Trust Metric, by Raph Levien
-
Attack Resistant Trust Metrics, by Raph Levien
-
Advogato Has Failed, by Bryan Taylor
-
Eigenmorality, by Scott Aaronson
-
See also: Sybil Attack
Worse Is Better
-
The Rise of โWorse is Betterโ, by Richard P. Gabriel
-
Worse Is Better, by Richard P. Gabriel
-
โRethinkDB: why we failedโ (Worse Is Better: RethinkDB vs MongoDB), by Slava Akhmechet
-
Lisp: Good News, Bad News, How to Win Big, by Richard P. Gabriel
Zero-Knowledge Proof Protocol
-
Zero Knowledge Proofs (Computerphile), by Alberto Sonnino
-
Zero Knowledge Proofs, by Scott Twombly
-
Introduction to zkSNARKs, by Christian Reitwiessner
-
Bulletproofs: Short Proofs for Confidential Transactions and More, by Benedikt Bรผnz, Jonathan Bootle, Dan Boneh, Andrew Poelstra, Pieter Wuille, Greg Maxwell
Blockchain Reading List created, and maintained by Charles Iliya Krempeaux.
Canonical URL: https://github.com/reiver/blockchain-reading-list