Book description
Dive into Bitcoin technology with this hands-on guide from one of the leading teachers on Bitcoin and Bitcoin programming. Author Jimmy Song shows Python programmers and developers how to program a Bitcoin library from scratch. You’ll learn how to work with the basics, including the math, blocks, network, and transactions behind this popular cryptocurrency and its blockchain payment system.
By the end of the book, you'll understand how this cryptocurrency works under the hood by coding all the components necessary for a Bitcoin library. Learn how to create transactions, get the data you need from peers, and send transactions over the network. Whether you’re exploring Bitcoin applications for your company or considering a new career path, this practical book will get you started.
- Parse, validate, and create bitcoin transactions
- Learn Script, the smart contract language behind Bitcoin
- Do exercises in each chapter to build a Bitcoin library from scratch
- Understand how proof-of-work secures the blockchain
- Program Bitcoin using Python 3
- Understand how simplified payment verification and light wallets work
- Work with public-key cryptography and cryptographic primitives
Publisher resources
Table of contents
- Foreword
- Preface
- 1. Finite Fields
- 2. Elliptic Curves
-
3. Elliptic Curve Cryptography
- Elliptic Curves over Reals
- Elliptic Curves over Finite Fields
- Coding Elliptic Curves over Finite Fields
- Point Addition over Finite Fields
- Coding Point Addition over Finite Fields
- Scalar Multiplication for Elliptic Curves
- Scalar Multiplication Redux
- Mathematical Groups
- Coding Scalar Multiplication
- Defining the Curve for Bitcoin
- Public Key Cryptography
- Signing and Verification
- Conclusion
- 4. Serialization
- 5. Transactions
- 6. Script
- 7. Transaction Creation and Validation
- 8. Pay-to-Script Hash
- 9. Blocks
- 10. Networking
- 11. Simplified Payment Verification
- 12. Bloom Filters
- 13. Segwit
- 14. Advanced Topics and Next Steps
-
A. Solutions
- 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
- Index
Product information
- Title: Programming Bitcoin
- Author(s):
- Release date: February 2019
- Publisher(s): O'Reilly Media, Inc.
- ISBN: 9781492031499
You might also like
book
Codeless Data Structures and Algorithms : Learn DSA Without Writing a Single Line of Code
In the era of self-taught developers and programmers, essential topics in the industry are frequently learned …
book
The Go Programming Language
is the authoritative resource for any programmer who wants to learn Go. It shows how to …
book
Fluent Python
Python’s simplicity lets you become productive quickly, but this often means you aren’t using everything it …
book
Effective Python: 90 Specific Ways to Write Better Python, 2nd Edition
Updated and Expanded for Python 3 It’s easy to start developing programs with Python, which is …