Curated study materials, tools, and a binge-worthy playlist for future Bitcoin Core & Knots contributors.
YouTube playlist embed: practical talks, code walkthroughs, and deep dives.
Author: Michel Laclé (personal study plan)
https://bitcoin.org/bitcoin.pdf
Foundational, but only the beginning. Focus on Sections 4–7.
https://developer.bitcoin.org/reference/
Key reference for:
- Transaction & block structures
- P2P messages
- Script opcodes
- Consensus rules
- Networking details
https://bitcoincore.org/en/doc/
Contains:
- RPC API reference
- Internal architecture
- Build system
- Wallet internals
- Mempool, P2P, validation logic
- C++ testing framework overview
https://bitcoincore.reviews
Learn how Core developers think:
- Weekly PR review notes
- Reasons PRs are accepted/rejected
- Standards for contributions
https://github.com/bitcoinknots/bitcoin
Areas to explore:
- src/policy/
- src/validation.*
- src/net_processing.*
- Knots patches in contrib/
Knots adds:
- Extra policy checks
- Extra privacy/hardening features
- Additional relay logic
https://github.com/bitcoin/bips
Important BIPs to prioritize:
- BIP 32 — HD wallets
- BIP 39 — Mnemonics
- BIP 141 — SegWit
- BIP 340–342 — Taproot
- BIP 68/112/113 — Locktimes, CSV
- BIP 125 — Replace-By-Fee
- BIP 133 — Feefilter
- BIP 152 — Compact block relay
- BIP 37 — Bloom filters (legacy)
- BIP 157/158 — Neutrino
https://github.com/bitcoinbook/bitcoinbook
Focus on:
- Ch.5 Transactions
- Ch.6 Blockchain
- Ch.7 Networking
- Ch.8 Mining
- Ch.9 Consensus
- Ch.10 Bitcoin Script
https://github.com/lnbook/lnbook
Useful for Layer 2 understanding.
https://github.com/jamesob/bitcoincore-notes
Annotated insights into:
- Validation pipeline
- Block/UTXO structures
- Script execution
- Mempool behavior
- P2P processing
https://github.com/chaincodelabs/bitcoin-core-dev
Topics:
- UTXO model
- Consensus & networking
- Test framework
- RPC system
- Block validation
https://github.com/chaincodelabs/bitcoin-core-onboarding/blob/main/5.%20Testing.md
Understand:
- Functional tests: test/functional/
- Unit tests: src/test/
- Fuzz tests: src/test/fuzz/
https://en.bitcoin.it/wiki/Protocol_documentation
Useful for low-level network comprehension.
src/validation/ src/net_processing/ src/consensus/ src/script/ clang-tidy static analysis --enable-debug --with-sanitizers=address,undefined I can generate any of the following if requested: