Skip to content

Bitcoin library inspired by 'Programming Bitcoin' written in Rust

License

Notifications You must be signed in to change notification settings

tigeryant/programming-bitcoin-rust

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

programming-bitcoin-rust

This repository is a Bitcoin utility library written in Rust, inspired by the exercises in Programming Bitcoin by Jimmy Song. The book teaches how to build a Bitcoin library from the ground up, starting with foundational cryptographic concepts and progressing to Bitcoin-specific features such as transactions, scripts, blocks, and networking.

The exercises in the book are originally implemented in Python. This repository aims to provide an idiomatic Rust implementation, leveraging Rust’s safety and performance features while staying true to the book’s learning objectives. It is currently the most comprehensive Rust port of the library on GitHub.

Progress Checklist

  • Chapter 1: Finite Fields
  • Chapter 2: Elliptic Curves
  • Chapter 3: Elliptic Curve Cryptography
  • Chapter 4: Serialization
  • Chapter 5: Transactions
  • Chapter 6: Script
  • Chapter 7: Transaction Creation and Validation
  • Chapter 8: Pay to Script Hash
  • Chapter 9: Blocks
  • Chapter 10: Networking
  • Chapter 11: Simplified Payment Verification
  • Chapter 12: Bloom Filters
  • Chapter 13: Segwit

Acknowledgements

  • Jimmy Song: For writing Programming Bitcoin, the foundational inspiration for this project.

Releases

No releases published

Packages

No packages published

Languages