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
40 Algorithms Every Programmer Should Know
Learn algorithms for solving classic computer science problems with this concise guide covering everything from fundamental …
book
Software Engineering at Google
Today, software engineers need to know not only how to program effectively but also how to …
book
Head First Design Patterns, 2nd Edition
You know you don’t want to reinvent the wheel, so you look to design patterns—the lessons …
book
Fundamentals of Software Architecture
Salary surveys worldwide regularly place software architect in the top 10 best jobs, yet no real …