{"id":13584453,"url":"https://github.com/reiver/blockchain-reading-list","last_synced_at":"2025-04-11T02:31:56.273Z","repository":{"id":148331207,"uuid":"116930452","full_name":"reiver/blockchain-reading-list","owner":"reiver","description":"A reading list on blockchain and related technologies, targeted at technical people who want a deep understanding of those topics.","archived":false,"fork":false,"pushed_at":"2024-08-19T20:48:35.000Z","size":150,"stargazers_count":114,"open_issues_count":0,"forks_count":17,"subscribers_count":11,"default_branch":"charles/initial","last_synced_at":"2025-04-09T09:46:26.518Z","etag":null,"topics":["abstract-algebra","bitcoin","blockchain","cryptography","distributed-computing","ethereum","identity","peer-to-peer","reading-list","whitepapers"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/reiver.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-01-10T08:32:14.000Z","updated_at":"2025-02-18T18:16:38.000Z","dependencies_parsed_at":"2024-07-26T02:25:56.604Z","dependency_job_id":"8f08f8db-6454-4a2b-82a7-e70eacae7afb","html_url":"https://github.com/reiver/blockchain-reading-list","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/reiver%2Fblockchain-reading-list","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/reiver%2Fblockchain-reading-list/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/reiver%2Fblockchain-reading-list/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/reiver%2Fblockchain-reading-list/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/reiver","download_url":"https://codeload.github.com/reiver/blockchain-reading-list/tar.gz/refs/heads/charles/initial","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248329557,"owners_count":21085559,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["abstract-algebra","bitcoin","blockchain","cryptography","distributed-computing","ethereum","identity","peer-to-peer","reading-list","whitepapers"],"created_at":"2024-08-01T15:04:15.774Z","updated_at":"2025-04-11T02:31:56.249Z","avatar_url":"https://github.com/reiver.png","language":null,"funding_links":[],"categories":["Others"],"sub_categories":[],"readme":"\u003chgroup\u003e\n\u003ch1\u003eBlockchain Reading List\u003c/h1\u003e\n\u003cp\u003eby \u003ca href=\"http://reiver.link/\"\u003eCharles Iliya Krempeaux\u003c/a\u003e\u003c/p\u003e\n\u003c/hgroup\u003e\n\nThis is a list of readings (and watchings) on **blockchain** related topics.\n\n\n## Preamble\n\nThe word _\"blockchain\"_ (or _\"block chain\"_) started off as a more or less narrowly defined technical term.\n\nIt (_\"blockchain\"_) later became a buzzword that represented anything related to BitCoin, alt-coins (ex: LiteCoin, Ethereum, etc), cryptocurrencies, etc.\n\nAnd now that the word _\"blockchain\"_ is on the verge of becoming a _household name_,\nit seems like it is starting to include what some others used to call _\"P2P\"_, and are now calling _\"distributed computing\"_.\n\n(In some usages of the label _\"blockchain\"_, neither _blocks_ or _hash lists_ seemed to be necessary for that thing to be called a _\"blockchain\"_.)\n\nThis seems to somewhat mirror how previously the usage of the word _\"P2P\"_ seemed to broaden and also include what others are calling  _\"distributed computing\"_.\n\n(Although this time around, cryptography and various concepts of \"money\" seems to have prominence.)\n\nRegardless, this document focuses on a more traditional definition of _\"blockchain\"_.\n\nBut also includes some topics that the author of this document feels that, while not strictly about blockchains,\nwill help provide readers with a deep(er) technical background that can be useful when working with or creating blockchain based technologies.\n\n\n## Audience\n\nThis document is targeted at technical people, who are looking to gain a deep understand of the concepts behind blockchain based technologies.\n\n\n## Topics\n* [Abstract Algebra](#abstract-algebra)\n* [Behavioral Science](#behavioral-science)\n* [BitCoin](#bitcoin)\n* [Bit Gold](#bit-gold)\n* [B-Money](#b-money)\n* [Colored Coins](#colored-coins)\n* [Consensus](#consensus)\n* [Content Addressing](#content-addressing)\n* [Cryptocurrency](#cryptocurrency)\n* [Cryptography](#cryptography)\n* [Distributed Computing](#distributed-computing)\n* [Distributed Hash Tables](#distributed-hash-tables)\n* [eCash](#ecash)\n* [Error Detection and Correction](#error-detection-and-correction)\n* [Ethereum](#ethereum)\n* [Handicap Principle](#handicap-principle)\n* [Hashcash](#hashcash)\n* [Hash Lists](#hash-lists)\n* [History (Cypherpunk)](#history-cypherpunk)\n* [History (Open Source)](#history-open-source)\n* [Identity](#identity)\n* [Mastercoin](#mastercoin)\n* [Money](#money)\n* [Onion Routing](#onion-routing)\n* [Paxos](#paxos)\n* [Peer-to-Peer Networks](#peer-to-peer-networks)\n* [Privacy](#privacy)\n* [Proof-of-Stake](#proof-of-stake)\n* [Proof-of-Work](#proof-of-work)\n* [Raft](#raft)\n* [Rai](#rai)\n* [Randomness](#randomness)\n* [Selfish Mining Attack](#selfish-mining-attack)\n* [Smart Contracts](#smart-contracts)\n* [Solidity](#solidity)\n* [Sybil Attack](#sybil-attack)\n* [Tamper Detection](#tamper-detection)\n* [Trust Networks](#trust-networks)\n* [Worse Is Better](#worse-is-better)\n* [Zero-Knowledge Proof Protocol](#zero-knowledge-proof-protocol)\n\n\n## Abstract Algebra\n\n* [Abstract Algebra (Socratica)](https://www.youtube.com/playlist?list=PLi01XoE8jYoi3SgnnGorR_XOW3IcK-TP6),\n  by Liliana de Castro, Michael Harrison, Hatch Harrison\n\n\n## Behavioral Science\n\n* [Please, not another bias! An evolutionary take on behavioural economics](https://jasoncollins.blog/2015/07/30/please-not-another-bias-an-evolutionary-take-on-behavioural-economics/),\n  by Jason Collins\n\n* [The Hidden Agenda of the Political Mind](https://www.goodreads.com/book/show/21981657-the-hidden-agenda-of-the-political-mind),\n  by Jason Weeden, Robert Kurzban\n\n* [Hierarchy in the Forest](https://www.goodreads.com/book/show/2131522.Hierarchy_in_the_Forest),\n  by Christopher Boehm\n\n* [The Biology of Moral Systems](https://www.goodreads.com/book/show/1446851.The_Biology_of_Moral_Systems),\n  by Richard D. Alexander\n\n* See also: [Handicap Principle](#handicap-principle)\n\n\n## BitCoin\n\n* [Bitcoin: A Peer-to-Peer Electronic Cash System](https://bitcoin.org/bitcoin.pdf),\n  by Satoshi Nakamoto\n\n* [Annotated: \"Bitcoin: A Peer-to-Peer Electronic Cash System\"](https://genius.com/2698706),\n  by Satoshi Nakamoto, Balaji Srinivasan, Et al.\n\n* [How the Bitcoin protocol actually works](http://www.michaelnielsen.org/ddi/how-the-bitcoin-protocol-actually-works/),\n  by Michael Nielsen\n  \n* [But how does bitcoin actually work?](https://youtu.be/bBC-nXj3Ng4),\n  by Grant Sanderson\n\n* [Ever wonder how Bitcoin (and other cryptocurrencies) actually work?](https://youtu.be/bBC-nXj3Ng4),\n  by Grant Sanderson\n\n* [Mastering Bitcoin](https://github.com/bitcoinbook/bitcoinbook),\n  by Andreas M. Antonopoulos\n\n* [Why Is It Taking 20 Minutes to Mine This Bitcoin Block?](http://r6.ca/blog/20180225T160548Z.html),\n  by Russell O’Connor\n\n* [OP_RETURN and the Future of Bitcoin](https://bitzuma.com/posts/op-return-and-the-future-of-bitcoin/),\n  by Rich Apodaca\n\n* [Explanation of what an OP_RETURN transaction looks like](https://bitcoin.stackexchange.com/questions/29554/explanation-of-what-an-op-return-transaction-looks-like)\n\n* [Hidden surprises in the Bitcoin blockchain and how they are stored: Nelson Mandela, Wikileaks, photos, and Python software](http://www.righto.com/2014/02/ascii-bernanke-wikileaks-photographs.html),\n  by Ken Shirriff\n\n\n## Bit Gold\n\n* [Bit gold](https://unenumerated.blogspot.com/2005/12/bit-gold.html),\n  by Nick Szabo\n\n\n## B-Money\n\n* [b-money, an anonymous, distributed electronic cash system](http://weidai.com/bmoney.txt),\n  by Wei Dai\n\n* [B-money - Bitcoin Wiki](https://en.bitcoin.it/wiki/B-money)\n\n\n## Colored Coins\n\n* [Colored Coins - Bitcoin Wiki](https://en.bitcoin.it/wiki/Colored_Coins)\n\n* [Colored Coins - Wikipedia](https://en.wikipedia.org/wiki/Colored_coin)\n\n* [Coloring Scheme](https://github.com/Colored-Coins/Colored-Coins-Protocol-Specification/wiki/Coloring%20Scheme)\n\n\n## Consensus\n\n* See also: [BitCoin](#bitcoin), [Paxos](#paxos), [Raft](#raft)\n\n\n## Content Addressing\n\n* [Magnet URI Project](http://magnet-uri.sourceforge.net/)\n\n* [MAGNET v0.1 (Draft Tech Overview/Spec)](http://magnet-uri.sourceforge.net/magnet-draft-overview.txt),\n  by Gordon Mohr\n\n* [Magnet URI scheme (Wikipedia)](https://en.wikipedia.org/wiki/Magnet_URI_scheme),\n\n* [A URN Namespace For Identifiers Based on Cryptographic Hashes](https://tools.ietf.org/html/draft-thiemann-hash-urn-01)\n  by Peter Thiemann\n\n* [IETF RFC 6920: Naming Things with Hashes](https://tools.ietf.org/search/rfc6920)\n\n* [Trusty URIs: Verifiable, Immutable, and Permanent Digital Artifacts for Linked Data](https://arxiv.org/abs/1401.5775),\n  by Tobias Kuhn, Michel Dumontier\n\n* [BIP 122](https://github.com/bitcoin/bips/blob/master/bip-0122.mediawiki)\n\n* [HTTP Extensions for a Content-Addressable Web](http://lists.w3.org/Archives/Public/www-talk/2001NovDec/0090.html)\n\n* [IETF RFC 2397: The \"data\" URL scheme](https://tools.ietf.org/html/rfc2397)\n\n* [Hash URI Specification](https://github.com/hash-uri/hash-uri)\n\n* [HTTP Want-Digest](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Want-Digest)\n\n* [HTTP Digest](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Digest)\n\n* [Cache Digests for HTTP/2](https://httpwg.org/http-extensions/cache-digest.html)\n  * [HTTP/2 push is tougher than I thought](https://jakearchibald.com/2017/h2-push-tougher-than-i-thought/)\n\n* See also: [Distributed Hash Tables](#distributed-hash-tables)\n\n\n## Cryptocurrency\n\n* See also: [BitCoin](#bitcoin), [Bit Gold](#bit-gold), [B-Money](#b-money), [eCash](#ecash), [Ethereum](#ethereum),\n\n\n## Cryptography\n\n* [Everything you need to know about cryptography in 1 hour](https://youtu.be/jzY3m5Kv7Y8),\n  by Colin Percival\n\n* [$5 wrench attack](https://xkcd.com/538/),\n  by Randall Munroe\n\n* [Communication Theory of Secrecy Systems](http://netlab.cs.ucla.edu/wiki/files/shannon1949.pdf),\n  by Claude Elwood Shannon\n\n* [New Directions in Cryptography](http://wwwknoll.in.tum.de/pub/Main/TeachingSs2006EinfuehrungInformatik2/diffie.pdf),\n  by Whitfield Diffie, Martin E. Hellman\n\n* [A Method for Obtaining Digital Signatures and Public-Key Cryptosystems](https://people.csail.mit.edu/rivest/Rsapaper.pdf),\n  by Ronald Linn Rivest, Adi Shamir, Leonard Adleman\n\n* [How RSA Works With Examples](http://doctrina.org/How-RSA-Works-With-Examples.html),\n  by Barry Steyn\n\n* [Why RSA Works: Three Fundamental Questions Answered](http://doctrina.org/Why-RSA-Works-Three-Fundamental-Questions-Answered.html),\n  by Barry Steyn\n\n* [Cryptographic Hash VS MAC: What You Need To Know](http://doctrina.org/Cryptographic-Hash-Vs-MAC:What-You-Need-To-Know.html),\n  by Barry Steyn\n\n* [End to End Encryption (E2EE) (Computerphile)](https://youtu.be/jkV1KEJGKRA),\n  by Mike Pound\n\n* [Secret Key Exchange (Diffie-Hellman) (Computerphile)](https://youtu.be/NmM9HA2MQGI),\n  by Mike Pound\n\n* See also: [Onion Routing](#onion-routing), [Randomness](#randomness), [Zero-Knowledge Proof Protocol](#zero-knowledge-proof-protocol)\n\n\n## Distributed Computing\n\n* [Introduction to Distributed System Design](http://www.hpcs.cs.tsukuba.ac.jp/~tatebe/lecture/h23/dsys/dsd-tutorial.html)\n\n* [Perspectives on the CAP Theorem](http://groups.csail.mit.edu/tds/papers/Gilbert/Brewer2.pdf),\n  by Seth Gilbert, Nancy A. Lynch\n\n* [The Log: What every software engineer should know about real-time data's unifying abstraction](https://engineering.linkedin.com/distributed-systems/log-what-every-software-engineer-should-know-about-real-time-datas-unifying),\n  by Jay Kreps\n\n* [Notes on Distributed Systems for Young Bloods](https://www.somethingsimilar.com/2013/01/14/notes-on-distributed-systems-for-young-bloods/),\n  by Jeff Hodges\n\n* [Immutability Changes Everything (video)](https://vimeo.com/52831373),\n  by Pat Helland\n\n* [Immutability Changes Everything (paper)](http://cidrdb.org/cidr2015/Papers/CIDR15_Paper16.pdf),\n  by Pat Helland\n\n* [Kafka: a Distributed Messaging System for Log Processing](http://notes.stephenholiday.com/Kafka.pdf),\n  by Jay Kreps, Neha Narkhede, Jun Rao\n\n* [Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications](https://pdos.csail.mit.edu/papers/chord:sigcomm01/chord_sigcomm.pdf),\n  by Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan\n\n* [Dynamo: Amazon’s Highly Available Key-value Store ](http://www.allthingsdistributed.com/files/amazon-dynamo-sosp2007.pdf),\n  by Giuseppe DeCandia, Deniz Hastorun, Madan Jampani, Gunavardhan Kakulapati, Avinash Lakshman, Alex Pilchin, Swaminathan Sivasubramanian, Peter Vosshall, Werner Vogels\n\n* [MapReduce: Simplified Data Processing on Large Clusters](https://research.google.com/archive/mapreduce.html),\n  by Jeffrey Dean, Sanjay Ghemawat\n\n* [The Chubby Lock Service for Loosely-Coupled Distributed Systems](https://research.google.com/archive/chubby.html),\n  by Mike Burrows\n\n* [So, you want to trace your distributed system? Key design insights from years of practical experience](http://www.pdl.cmu.edu/PDL-FTP/SelfStar/CMU-PDL-14-102.pdf)\n  by Raja R. Sambasivan, Rodrigo Fonseca, Ilari Shafer, Gregory R. Ganger\n\n* [Dapper, a Large-Scale Distributed Systems Tracing Infrastructure](https://research.google.com/pubs/pub36356.html),\n  by Benjamin H. Sigelman, Luiz André Barroso, Mike Burrows, Pat Stephenson, Manoj Plakal, Donald Beaver, Saul Jaspan, Chandan Shanbhag\n\n* [Queues Don't Fix Overload](https://ferd.ca/queues-don-t-fix-overload.html),\n  by Fred Hebert\n\n* See also: [Consensus](#consensus), [Peer-to-Peer Networks](#peer-to-peer-networks)\n\n\n## Distributed Hash Tables\n\n* [Kademlia: A Peer-to-peer Information System Based on the XOR Metric](https://pdos.csail.mit.edu/~petar/papers/maymounkov-kademlia-lncs.pdf),\n  by Petar Maymounkov, David Mazières\n\n\n## eCash\n\n* [Blind signatures for untraceable payments](http://sceweb.sce.uhcl.edu/yang/teaching/csci5234WebSecurityFall2011/Chaum-blind-signatures.PDF),\n  by David Chaum\n\n* [eCash Bitcoin wiki](https://en.bitcoinwiki.org/wiki/Ecash)\n\n* [An introduction to ecash](https://web.archive.org/web/19971009044558/http://digicash.com/publish/ecash_intro/ecash_intro.html)\n\n\n## Error Detection and Correction\n\n* [Information Theory \u0026 Coding (Computerphile)](https://www.youtube.com/playlist?list=PLzH6n4zXuckpKAj1_88VS-8Z6yn9zX_P6),\n  by David Brailsford\n\n* [Multiple Dimension Error Correction (Computerphile)](https://youtu.be/1_X-7BgHbE0),\n  by David Brailsford\n\n* [The Perfect Code (Computerphile)](https://youtu.be/WPoQfKQlOjg),\n  by David Brailsford\n\n* [EXTRA BITS: More on Perfect Codes (Computerphile)](https://youtu.be/i4zC67Yf5Iw),\n  by David Brailsford\n\n\n## Ethereum\n\n* [Ethereum in 25 Minutes](https://www.youtube.com/watch?v=66SaEDzlmP4\u0026t=22s),\n  by Vitalik Buterin\n\n* [Ethereum White Paper](https://github.com/ethereum/wiki/wiki/White-Paper)\n\n* [Ethereum Yellow Paper](https://github.com/ethereum/yellowpaper),\n  by Gav Would, et al\n\n* [Ethereum Beige Paper: Rewrite of the Yellowpaper in non-Yellowpaper syntax](https://github.com/chronaeon/beigepaper/),\n  by Micah Dameron\n\n* [Mastering Ethereum](https://github.com/ethereumbook/ethereumbook),\n  by Andreas M. Antonopoulos, Gavin Wood\n\n* See also: [Solidity](#solidity)\n\n\n## Handicap Principle\n\n* [The Handicap Principle: A Missing Piece of Darwin's Puzzle](http://www.goodreads.com/book/show/885547.The_Handicap_Principle),\n  by Amotz Zahavi, Avishag Zahavi\n\n\n## Hashcash\n\n* [Hashcash - A Denial of Service Counter-Measure](http://www.hashcash.org/papers/hashcash.pdf),\n  by Adam Back\n\n\n## Hash Lists\n\n* [How to Time-Stamp a Digital Document](https://link.springer.com/chapter/10.1007/3-540-38424-3_32),\n  by Stuart Haber, W. Scott Stornetta\n\n\n## History (Cypherpunk)\n\n* [A Cypherpunk's Manifesto](https://www.activism.net/cypherpunk/manifesto.html),\n  by Eric Hughes\n\n* [The Crypto Anarchist Manifesto](https://www.activism.net/cypherpunk/crypto-anarchy.html),\n  by Timothy C. May\n\n* [Cyphernomicon](https://www.cypherpunks.to/faq/cyphernomicron/cyphernomicon.html),\n  by Timothy C. May\n\n* [This Machine Kills Secrets](https://www.goodreads.com/book/show/13586738-this-machine-kills-secrets),\n  by Andy Greenberg\n\n* [Crypto](https://www.goodreads.com/book/show/984428.Crypto),\n  by Steven Levy\n\n\n## History (Open Source)\n\n* [The Cathedral and the Bazaar ](http://www.catb.org/esr/writings/cathedral-bazaar/cathedral-bazaar/),\n  by Eric Steven Raymond\n\n* [Homesteading the Noosphere](http://www.catb.org/esr/writings/homesteading/homesteading/),\n  by Eric Steven Raymond\n\n* [The Wikipedia Revolution](https://www.goodreads.com/book/show/4606921-the-wikipedia-revolution),\n  by Andrew Lih\n\n\n## Identity\n\n* [Identity Crisis: How Identification Is Overused and Misunderstood](https://www.goodreads.com/book/show/171237.Identity_Crisis),\n  by Jim Harper\n\n* [Secrets and Lies: Digital Security in a Networked World](https://www.goodreads.com/book/show/304482.Secrets_and_Lies),\n  by Bruce Schneier\n\n* [Secure Electronic Commerce: Building the Infrastructure for Digital Signatures and Encryption](https://www.goodreads.com/book/show/1174424.Secure_Electronic_Commerce),\n  by Warwick Ford, Michael S. Baum\n\n* [Understanding Windows CardSpace: An Introduction to the Concepts and Challenges of Digital Identities ](https://www.goodreads.com/book/show/22380161-understanding-windows-cardspace),\n  by Vittorio Bertocci, Garrett Serack, Caleb Baker\n\n* [7 Laws of Identity](https://web.archive.org/web/20090824224507/https://www.identityblog.com/?p=1065)\n  by Kim Camerons,\n\n* [Getting Started with OAuth 2.0](https://www.goodreads.com/book/show/13228633-getting-started-with-oauth-2-0),\n  by Ryan Boyd\n\n* [Digital Identity](https://www.goodreads.com/book/show/155374.Digital_Identity),\n  by Phillip J. Windley\n\n* [Identity Management: A Primer](https://www.goodreads.com/book/show/7273193-identity-management),\n  by Graham Williamson, David Yip, Ilan Sharoni, Kent Spaulding\n\n\n## Mastercoin\n\n* [Mastercoin: A Second-Generation Protocol on the Bitcoin Blockchain](https://bitcoinmagazine.com/articles/mastercoin-a-second-generation-protocol-on-the-bitcoin-blockchain-1383603310/),\n  by Vitalik Buterin\n\n* [MasterCoin Complete Specification Version 1.0](https://www.scribd.com/document/157454619/MasterCoin-Specification),\n  by J.R. Willett\n\n\n## Money\n\n* [Shelling Out: The Origins of Money](http://nakamotoinstitute.org/shelling-out/),\n  by Nick Szabo\n\n* [The Ascent of Money: A Financial History of The World (Documentary)](https://youtu.be/fsrtB5lp60s),\n  by Niall Ferguson\n\n* See also: [BitCoin](#bitcoin), [Bit Gold](#bit-gold), [B-Money](#b-money), [eCash](#ecash), [Ethereum](#ethereum), [Rai](#rai)\n\n\n## Onion Routing\n\n* [Onion Routing (Computerphile)](https://youtu.be/QRYzre4bf7I),\n  by Mike Pound\n\n* [EXTRA BITS: Onion Routing (Computerphile)](https://youtu.be/6eWkdyRNfqY),\n  by Mike Pound\n\n* [Tor: The Second-Generation Onion Router](https://www.usenix.org/conference/13th-usenix-security-symposium/tor-second-generation-onion-router),\n  by Roger Dingledine, Nick Mathewson, Paul Syverson\n\n* [Circuit Fingerprinting Attacks: Passive Deanonymization of Tor Hidden Services](https://people.csail.mit.edu/devadas/pubs/circuit_finger.pdf),\n  by Albert Kwon, Mashael AlSabah, David Lazar, Marc Dacier, Srinivas Devadas\n\n* [Garlic Routing](https://geti2p.net/en/docs/how/garlic-routing)\n\n\n## Paxos\n\n* [Neat Algorithms - Paxos](http://harry.me/blog/2014/12/27/neat-algorithms-paxos/),\n  by Harry Brundage\n\n* [The Paxos Algorithm](https://youtu.be/d7nAGI_NZPk),\n  by Luis Quesada Torres\n\n* [The Part-Time Parliament](https://www.microsoft.com/en-us/research/uploads/prod/2016/12/The-Part-Time-Parliament.pdf),\n  by Leslie Lamport\n\n\n## Peer-to-Peer Networks\n\n* [Understanding Churn in Peer-to-Peer Networks](http://www.barsoom.org/papers/imc-2006-churn.pdf),\n  by Daniel Stutzbach, Reza Rejaie\n\n* See also: [BitCoin](#bitcoin), [Bit Gold](#bit-gold), [Distributed Hash Tables](#distributed-hash-tables)\n\n\n## Privacy\n\n* [An Overview of Blockchain Privacy Mechanisms](https://steemit.com/zcoin/@zcoinofficial/an-overview-of-blockchain-privacy-mechanisms-and-how-zerocoin-in-zcoin-usdxzc-not-zcash-stacks-up),\n\n* See also: [Cryptography](#cryptography), [Zero-Knowledge Proof Protocol](#zero-knowledge-proof-protocol)\n\n\n## Proof-of-Stake\n\n* [On Stake and Consensus](https://download.wpsoftware.net/bitcoin/pos.pdf),\n  by Andrew Poelstra\n\n* [Cryptocurrencies without Proof of Work](https://arxiv.org/abs/1406.5694),\n  by Iddo Bentov, Ariel Gabizon, Alex Mizrahi\n\n\n## Proof-of-Work\n\n* See also: [Handicap Principle](#handicap-principle), [Hashcash](#hashcash), [Selfish Mining Attack](#selfish-mining-attack)\n\n\n## Raft\n\n* [The Raft Consensus Algorithm](https://raft.github.io/),\n  by Diego Ongaro, Et al.\n\n* [Raft: Understandable Distributed Consensus](http://thesecretlivesofdata.com/raft/),\n  by Ben Johnson\n\n* [In Search of an Understandable Consensus Algorithm (Extended Version)](https://raft.github.io/raft.pdf),\n  by Diego Ongaro, John Ousterhout\n\n* [Tangaroa: a Byzantine Fault Tolerant Raft](http://www.scs.stanford.edu/14au-cs244b/labs/projects/copeland_zhong.pdf),\n  by Christopher Copeland, Hongxia Zhong\n\n\n## Rai\n\n* [Island Money](https://www.clevelandfed.org/en/newsroom-and-events/publications/economic-commentary/economic-commentary-archives/2004-economic-commentaries/ec-20040201-island-money.aspx),\n  by Michael F. Bryan\n\n* [The Rai Stones are huge stone wheels used as currency on the island of Yap](http://www.thevintagenews.com/2017/10/25/the-rai-stones-are-huge-stone-wheels-used-as-currency-on-the-island-of-yap/),\n  by Boban Docevski\n\n\n## Randomness\n\n* [Uniform Non-Random Random Numbers](https://web.archive.org/web/20120107125139/http://changelog.ca/quote/2011/10/29/uniform_non-random_random_numbers),\n  by Timothy Masters\n\n* [TIFU by using Math.random()](https://medium.com/@betable/tifu-by-using-math-random-f1c308c4fd9d),\n  by Mike Malone\n\n* [The Lava Lamps That Help Keep The Internet Secure](https://youtu.be/1cUUfMeOijg),\n  by Tom Scott\n\n* [How can I securely generate a random number in my smart contract?](https://ethereum.stackexchange.com/questions/191/how-can-i-securely-generate-a-random-number-in-my-smart-contract)\n\n\n## Selfish Mining Attack\n\n* [Majority is not Enough: Bitcoin Mining is Vulnerable](https://www.cs.cornell.edu/~ie53/publications/btcProcFC.pdf),\n  by Ittay Eyal and Emin G ̈un Sirer\n\n* See also: [Proof-of-Work](#proof-of-work)\n\n\n## Smart Contracts\n\n* [The Idea of Smart Contracts](http://www.fon.hum.uva.nl/rob/Courses/InformationInSpeech/CDROM/Literature/LOTwinterschool2006/szabo.best.vwh.net/idea.html),\n  by Nick Szabo\n\n* See also: [B-Money](#b-money), [Solidity](#solidity)\n\n\n## Solidity\n\n* [What's Solidity](https://www.youtube.com/watch?v=v_hU0jPtLto\u0026list=PL16WqdAj66SCOdL6XIFbke-XQg2GW_Avg)\n\n* [Solidity Bytecode and Opcode Basics](https://medium.com/@blockchain101/solidity-bytecode-and-opcode-basics-672e9b1a88c2), by Bernard Peh\n\n* [CryptoZombies](https://cryptozombies.io/)\n\n* [Solidity by Example](https://solidity-by-example.org/)\n\n\n## Sybil Attack\n\n* [The Sybil Attack](http://research.microsoft.com/pubs/74220/IPTPS2002.pdf),\n  by John R. Douceur\n\n\n## Tamper Detection\n\n* [The Playdough Protocols](http://nakamotoinstitute.org/the-playdough-protocols/),\n  by Nick Szabo\n\n* See also: [Hash Lists](#hash-lists)\n\n\n## Trust Networks\n\n* [Advogato's Trust Metric](https://web.archive.org/web/20121025175345/http://www.advogato.org:80/trust-metric.html),\n  by Raph Levien\n\n* [Attack Resistant Trust Metrics](http://www.levien.com/thesis/compact.pdf),\n  by Raph Levien\n\n* [Advogato Has Failed](https://web.archive.org/web/20170628190710/http://www.advogato.org/article/928.html),\n  by Bryan Taylor\n\n* [Lessons from Advogato](https://youtu.be/9KgqtU25dBI),\n  by Raph Levien\n\n* [Eigenmorality](https://www.scottaaronson.com/blog/?p=1820),\n  by Scott Aaronson\n\n* [Kuro5hin User Sponsorship and Managed Growth](https://web.archive.org/web/20041101000000*/http://www.kuro5hin.org/story/2004/3/24/0502/96199),\n  by \"Rusty\" Lawrence Calvin Foster\n\n* See also: [Sybil Attack](#sybil-attack)\n\n\n## Worse Is Better\n\n* [The Rise of “Worse is Better”](https://www.jwz.org/doc/worse-is-better.html),\n  by Richard P. Gabriel\n\n* [Worse Is Better](http://dreamsongs.com/WorseIsBetter.html),\n  by Richard P. Gabriel\n\n* [“RethinkDB: why we failed” (Worse Is Better: RethinkDB vs MongoDB)](http://www.defmacro.org/2017/01/18/why-rethinkdb-failed.html),\n  by Slava Akhmechet\n\n* [Lisp: Good News, Bad News, How to Win Big](http://dreamsongs.com/WIB.html),\n  by Richard P. Gabriel\n\n* [Worse Is Better (WikiWikiWeb)](http://wiki.c2.com/?WorseIsBetter)\n\n\n## Zero-Knowledge Proof Protocol\n\n* [Zero Knowledge Proofs (Computerphile)](https://youtu.be/HUs1bH85X9I),\n  by Alberto Sonnino\n\n* [Zero Knowledge Proofs](https://youtu.be/0Sy6nb72gCk),\n  by Scott Twombly\n\n* [Introduction to zkSNARKs](https://youtu.be/jr95o_k_SwI),\n  by Christian Reitwiessner\n\n* [Bulletproofs: Short Proofs for Confidential Transactions and More](https://eprint.iacr.org/2017/1066.pdf),\n  by Benedikt Bünz, Jonathan Bootle, Dan Boneh, Andrew Poelstra, Pieter Wuille, Greg Maxwell\n\n***\n\n**Blockchain Reading List** created, and maintained by [Charles Iliya Krempeaux](http://reiver.link/).\n\nCanonical URL: https://github.com/reiver/blockchain-reading-list\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Freiver%2Fblockchain-reading-list","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Freiver%2Fblockchain-reading-list","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Freiver%2Fblockchain-reading-list/lists"}