Log In
Or create an account -> 
Imperial Library
  • Home
  • About
  • News
  • Upload
  • Forum
  • Help
  • Login/SignUp

Index
Cover Page Title Page Copyright Page About the Authors Brief Contents Contents in Detail Preface Acknowledgments Chapter 1: What is Bitcoin?
Why Bitcoin Now? The Benefits of Using Bitcoin The Complexity and Confusion of Bitcoin What’s in This Book?
Chapter 2: Bitcoin Basics
How Bitcoin Works in Simple Terms Bitcoin Units The Bitcoin Address The Private Key The Bitcoin Wallet
Creating Your First Bitcoin Wallet with Electrum Acquiring Bitcoins in Your Wallet Spending Bitcoins with Your Wallet Bitcoin Addresses Generated by Your Bitcoin Wallet Program
The Blockchain
The Blockchain Lottery Blockchain Forking Transaction Confirmations, Double Spending, and Irreversibility
Mining Bitcoins The Complexity of the Bitcoin System
Chapter 3: Storing your Bitcoins Safely, Securely, and Conveniently
Storing Your Private Key(s) Hot Storage vs. Cold Storage Personal vs. Hosted Wallets Safety, Security, and Convenience Storing Small Amounts of Bitcoins
Online Hosted Wallet Services Online Personal Wallet Services Personal Hot Wallet
Storing Large Amounts of Bitcoins
Paper Wallets Encrypted Paper Wallets Offline Transaction Signing Fragmented Private Keys and Multi-Signature Addresses
Fragmented Private Keys Multi-Signature Addresses
Special Mention: The Bitcoin Hardware Wallet Special Mention: The Bitcoin Brain Wallet Choosing the Storage Method That’s Right for You
Chapter 4: Buying Bitcoins
Why Not Just Mine Bitcoins? Ways to Buy Bitcoins Buying Bitcoins the Easy Way
Authentication Factors The Hassle of Converting Dollars (or Other Currencies) into Bitcoins
Reversible Transactions Irreversible Transactions Combining Reversible and Irreversible Assets Why Irreversible Transactions Are Arguably Superior
Buying Bitcoins with Coinbase
Step 1: Registering at Coinbase Step 2: Setting Up Two-Factor Identification Step 3: Linking Your Bank Account to Coinbase Step 4: Buying Bitcoins on Coinbase Step 5: Protecting Your Shiny New Bitcoins
Buying Bitcoins the Efficient Way
Buying Bitcoins from a Currency Exchange
Step 1: Setting Up an Account and Linking to Your Bank Account Step 2: Transferring US Dollars to Your Exchange Account Step 3: Placing an Order to Buy Bitcoins Market Orders Limit Orders
Buying Bitcoins the Fun and Futuristic Way
Step 1: Finding Someone to Buy From Step 2: Deciding on a Meeting Place Step 3: Handing Over the Money and Getting Your Bitcoins
A Face-to-Face Bitcoin Purchase Without Escrow Problems During Person-to-Person Transactions A Face-to-Face Bitcoin Purchase with Escrow
Satoshi Square
Still Don’t See a Buying Option That Works for You?
Chapter 5: Lost at Sea Chapter 6: Why Bitcoin is a Big Deal
A Brief History of Digital Currencies The Dawn of Bitcoin
Bitcoin’s First Four Years Bitcoin’s Early Impact
It Is the Largest Distributed Computing Project in History It Is a Massive Economic Experiment with Already Surprising Results It Has Prompted Serious Discussions Within Governments About the Role of Digital Currencies
The Future Potential of Bitcoin
What Are the Existential Risks to Bitcoin?
Does Bitcoin Have Advantages over Existing Currencies? Can Bitcoin Be Destroyed via Bugs or Hacks? Can Bitcoin Be Destroyed by Governments or Corporations? Can Bitcoin Be Supplanted by Another Cryptocurrency?
What Role Might Bitcoin Play in the Future?
Using Bitcoin for Savings Using Bitcoin as a Medium of Exchange
The Dangers of Decentralized Digital Money
Bitcoin and Illegal Activity The Energy Costs of Bitcoin Bitcoin and the Dangers of Deflation Bitcoin and Government Stability
Chapter 7: The Cryptography Behind Bitcoin
A Brief Cryptography Overview
One-Way Functions Cryptographic Hash Functions Verify Information Public Key Cryptography Digital Signatures
Whis Is It Called a Digital Signature?
Using Digital Signatures
Why Bitcoin Needs Cryptography
Authorizing Transactions with Digital Signatures Verifying the Validity of the Transaction History Proof-of-Work in Bitcoin Mining Extra Protection for Bitcoin Private Keys
Cryptographic Methods Used in Bitcoin
Cryptographic Hash Functions: SHA256 and RIPEMD160
Crowley and the Unfortunate Jelly-Filled Donut Incident
Moving Around on a Line Elliptic Curve Digital Signature Algorithm (ECDSA) Signing a Bitcoin Transaction Using ECDSA
The Security of Bitcoin’s Cryptography Pseudocode for Elliptic Point Summation and Point Multiplication
Chapter 8: Bitcoin Mining
Why Is Bitcoin Mining Needed?
A Parable of Two Generals Applying the Parable to Bitcoin Preventing Attacks with Mining Distributing New Currency with Mining
How Does Bitcoin Mining Work?
How Miners Solve a Block Anatomy of a Block Pooled Mining
Bitcoin Mining for Profit Theoretical Hash Rate Limits Decentralization in Bitcoin Mining The Strange World of Altcoins
Chapter 9: Understanding the Different Types of Bitcoin Wallets
Wallet Software Design Fundamentals
Offline vs. Online Transaction Signing Random Key Generation vs. Deterministic Key Generation (vs. Single Key Generation)
Combining Deterministic Key Generation with Watch-Only Wallets The Math Behind Deterministic Key Generation with Watch-Only Wallets
Full vs. Simplified Payment Verification
Other Common (and Not So Common) Bitcoin Wallet Features Future Wallets Which Wallet Is Right for You? Additional Wallet Considerations
Chapter 10: Bitcoin 2030
What Will a Bitcoin Be Worth in 2030? Bitcoin Mining in 2030 A Day in the Life of a Bitcoiner in 2030 The Bitcoin End Game
Appendix A: Hello Money! A Simple JavaScript Program
The Meaning of “Easy” Three Ways to Write Bitcoin Software General Security Notes on Bitcoin Programming Some Upbeat Notes on Bitcoin Security Writing Your First Bitcoin Program in JavaScript
Why Use JavaScript? Bitcoin Core vs. Bitcoind
Preparing Your Machine for JavaScript Bitcoin Programming
Installing Node.js Installing node-bitcoin Starting Bitcoin Core For Mac Hackers For Linux Folks
Hello Money!
Part 1: Initializing the Connection with Bitcoin Core Part 2: The Main Loop The Bitcoin Core JSON-RPC API
Running the Hello Money! App Limitations of Writing Bitcoin Programs That Use JSON-RPC
Appendix B: Bitcoin Programming with BitcoinJ
The Best Programming Language for Connecting to the Bitcoin Network Installing Java, Maven, and the BitcoinJ Library
Step 1: Installing Java Step 2: Installing Maven Step 3: Installing Git Step 4: Installing BitcoinJ
Creating a Starter Project for hello-money Writing the Code for hello-money
Declarations at the Top of the Program Initializing Our Java Objects Connecting to the Bitcoin Network Listening for New Money
Running and Testing the hello-money Java Program Bye-Bye Money
Importing a Private Key Sending the Money Ensuring the Money Transmission Running bye-bye-money
Gotchas When Using Wallets in BitcoinJ Conclusion
Index Footnotes
Chapter 1: What is Bitcoin? Chapter 2: Bitcoin Basics Chapter 3: Storing your Bitcoins Safely, Securely, and Conveniently Chapter 4: Buying Bitcoins Chapter 6: Why Bitcoin is a Big Deal Chapter 7: The Cryptography Behind Bitcoin Chapter 8: Bitcoin Mining Chapter 9: Understanding the Different Types of Bitcoin Wallets Chapter 10: Bitcoin 2030 Appendix A: Hello Money! A Simple Javascript Program Appendix B: Bitcoin Programming with Bitcoinj
Updates
  • ← Prev
  • Back
  • Next →
  • ← Prev
  • Back
  • Next →

Chief Librarian: Las Zenow <zenow@riseup.net>
Fork the source code from gitlab
.

This is a mirror of the Tor onion service:
http://kx5thpx2olielkihfyo4jgjqfb7zx7wxr3sd4xzt26ochei4m6f7tayd.onion