You are previewing Learning Bitcoin.
O'Reilly logo
Learning Bitcoin

Book Description

Embrace the new world of fiance by leveraging the power of crypto-currencies using Bitcoin and the Blockchain

About This Book

  • Set up your own wallet, buy and sell Bitcoin, and execute custom transactions on the Blockchain

  • Leverage the power of Bitcoin to reduce transaction costs and eliminate fraud

  • A practical step-by-step guide to break down the Bitcoin technology to ensure safe transactions

  • Who This Book Is For

    If you are familiar with online banking and want to expand your finances into a resilient and transparent currency, this book is ideal for you. A basic understanding of online wallets and financial systems will be highly beneficial to unravel the mysteries of Bitcoin.

    What You Will Learn

  • Set up your wallet and buy a Bitcoin in a flash while understanding the basics of addresses and transactions

  • Acquire the knack of buying, selling, and trading Bitcoins with online marketplaces

  • Secure and protect your Bitcoins from online theft using Brainwallets and cold storage

  • Understand how Bitcoin’s underlying technology, the Blockchain, works with simple illustrations and explanations

  • Configure your own Bitcoin node and execute common operations on the network

  • Discover various aspects of mining Bitcoin and how to set up your own mining rig

  • Dive deeper into Bitcoin and write scripts and multi-signature transactions on the network

  • Explore the various alt-coins and get to know how to compare them and their value

  • In Detail

    The financial crisis of 2008 raised attention to the need for transparency and accountability in the financial world. As banks and governments were scrambling to stay solvent while seeking a sustainable plan, a powerfully new and resilient technology emerged.

    Bitcoin, built on a fundamentally new technology called “The Blockchain,” offered the promise of a new financial system where transactions are sent directly between two parties without the need for central control.

    Bitcoin exists as an open and transparent financial system without banks, governments, or corporate support. Simply put, Bitcoin is “programmable money” that has the potential to change the world on the same scale as the Internet itself.

    This book arms you with immense knowledge of Bitcoin and helps you implement the technology in your money matters, enabling secure transactions.

    We first walk through the fundamentals of Bitcoin, illustrate how the technology works, and exemplify how to interact with this powerful and new financial technology. You will learn how to set up your online Bitcoin wallet, indulge in buying and selling of bitcoins, and manage their storage. We then get to grips with the most powerful algorithm of all times: the Blockchain, and learn how crypto-currencies can reduce the risk of fraud for e-commerce merchants and consumers.

    With a solid base of Blockchain, you will write and execute your own custom transactions. Most importantly, you will be able to protect and secure your Bitcoin with the help of effective solutions provided in the book. Packed with plenty of screenshots, Learning Bitcoin is a simple and painless guide to working with Bitcoin.

    Style and approach

    This is an easy-to-follow guide to working with Bitcoin and the Blockchain technology. This book is ideal for anyone who wants to learn the basics of Bitcoin and explore how to set up their own transactions.

    Downloading the example code for this book. You can download the example code files for all Packt books you have purchased from your account at http://www.PacktPub.com. If you purchased this book elsewhere, you can visit http://www.PacktPub.com/support and register to have the code file.

    Table of Contents

    1. Learning Bitcoin
      1. Table of Contents
      2. Learning Bitcoin
      3. Credits
      4. About the Author
      5. Acknowledgments
      6. About the Reviewers
      7. www.PacktPub.com
        1. Support files, eBooks, discount offers, and more
          1. Why subscribe?
          2. Free access for Packt account holders
      8. Preface
        1. What this book covers
        2. What you need for this book
        3. Who this book is for
        4. Conventions
        5. Reader feedback
        6. Customer support
          1. Downloading the example code
          2. Errata
          3. Piracy
          4. Questions
      9. 1. Setting up a Wallet
        1. A brief history of money
        2. Buying your first bitcoin in 15 minutes
          1. Signing up for a wallet – five minutes
          2. Adding a funding source – ten minutes
          3. Buying bitcoin – less than a minute
          4. Looking at your Bitcoin balance
        3. Explaining Bitcoin addresses
        4. Sending and receiving bitcoins
          1. Sending bitcoins
          2. Receiving bitcoins
        5. Private keys and wallets
        6. Transactions and confirmations
          1. Transactions
          2. Confirmations
        7. Comparing Bitcoin wallets
          1. Online wallets
          2. Desktop wallets
          3. Mobile wallets
          4. Hardware wallets
        8. Summary
      10. 2. Buying and Selling Bitcoins
        1. Understanding Bitcoin's price volatility
          1. Exchange rates
          2. Bitcoin's price history
          3. Price bubbles
          4. Theft
          5. Seizure
        2. Following exchange rates and news
          1. Price tickers
          2. Detailed price tracking
          3. Candlestick charts
          4. Market orders
          5. Trading techniques
          6. News sources
        3. Comparing Bitcoin exchanges
          1. Volume and liquidity
          2. Fees and commissions
          3. Transfer limits
          4. Jurisdiction and regulations
          5. Service uptime
        4. Trading Bitcoins on an exchange
          1. Setting up an account
          2. Depositing funds
          3. Using Coinbase Exchange
            1. Funding and orders
            2. Order book and history
            3. Price charts
        5. Physical Bitcoins
        6. Summary
      11. 3. Protecting Your Bitcoins
        1. Storing your bitcoins
          1. Bitcoin savings
          2. Paper wallets
            1. One time use paper wallets
            2. Creating a paper wallet
            3. Verifying your wallet's balance
            4. Importing versus sweeping
            5. Importing your paper wallet
            6. Paper wallet guidelines
            7. Paper wallet services
          3. Brainwallets
            1. Creating a brainwallet
          4. Increasing brainwallet security
            1. Deterministic wallets
              1. Creating a deterministic wallet
              2. Spending from a deterministic wallet
            2. Type 2 Hierarchical Deterministic wallets
          5. Installing a HD wallet
          6. Bitcoins in cold storage
            1. Cold storage with Electrum
          7. Verifying access to a private key
        2. Good housekeeping with Bitcoin
        3. Summary
      12. 4. Understanding the Blockchain
        1. The Genesis block
          1. Satoshi Nakamoto
          2. The whitepaper
          3. The blockchain
        2. Keys, transactions, and blocks
          1. Creating a transaction
          2. Digital signatures
          3. Public key encryption
          4. Signing a document
          5. Elliptic Curve Cryptography
          6. Bitcoin addresses
            1. Cryptographic hashes
            2. Generating a Bitcoin address
          7. Signing a transaction
          8. Decentralized network
          9. Broadcasting the transaction
        3. The blockchain
          1. Blocks
          2. Forks
          3. The Bitcoin supply
          4. Proof of work
          5. Confirmation
          6. Difficulty level
          7. Mining
          8. Solving a difficult problem
          9. Transaction fees
        4. Network attacks
          1. 51 percent attacks
          2. Race attacks
          3. Finney attacks
        5. Alternative coins
        6. Summary
      13. 5. Installing a Bitcoin Node
        1. Understanding a Bitcoin node
          1. Bitcoin Core
          2. Internals of a node
            1. Node discovery
            2. Messaging
            3. Maintaining a Blockchain
            4. Transaction relaying
            5. Bitcoin wallets
        2. Installing the client
          1. Requirements
          2. Starting the client
          3. Connecting to the network
          4. Downloading the blockchain
        3. Using the client
          1. Encrypting your wallet
          2. Backing up your wallet
          3. Balance and history
            1. Receiving transactions
          4. Sending transactions
        4. Executing Bitcoin operations
          1. Opening the console
          2. Working with an encrypted wallet
          3. Working with Bitcoin addresses
          4. Creating and sending a transaction
            1. Generating a destination address
            2. Selecting a funding source
            3. Specifying a change address
            4. Including a transaction fee
            5. Defining the transaction in JSON
            6. Encoding and signing the transaction
            7. Reviewing the transaction
            8. Broadcasting the transaction
        5. Summary
      14. 6. Understanding the Mining Process
        1. Digital gold
          1. Bitcoin mining
        2. Exploring the mining ecosystem
          1. Validating transactions
          2. Proof-of-Work
            1. SHA-256
            2. Scrypt
          3. Mining rewards
          4. Difficulty metrics
          5. Mining hardware
        3. Mining conditions
          1. Mining pools
            1. Mining shares
            2. Fees and Payout
          2. Cloud mining
          3. Estimating profitability
            1. Hardware efficiency
            2. Factoring in the difficulty level
            3. Selecting a currency
            4. Exchange rates
        4. Setting up a mining client
          1. Requirements
            1. Capital
            2. Hardware
            3. Facilities
          2. Choosing the equipment
          3. Choosing the software
        5. Connecting to a mining pool
          1. The payout method
          2. The pool fees
          3. The pool speed
          4. Additional features
          5. Avoiding large pools
          6. Running the client
        6. Summary
      15. 7. Programming Bitcoin
        1. Programmable money
          1. Decentralized applications
          2. Blockchains
            1. Public Blockchains
            2. Permissioned Blockchains
          3. Smart contracts
        2. Installing BitcoinJS
          1. Requirements
          2. Beginning the installation
          3. Editing the source code
        3. Programming common Bitcoin operations
          1. Checking your balance
          2. Generating addresses for a website
        4. Sending transactions
          1. Simple transactions
        5. Building an Escrow contract
          1. Generating the keys
          2. Generating the Escrow address
          3. Creating a withdraw script
          4. Signing the transaction
          5. Broadcasting the transaction
          6. Refunding
        6. Summary
      16. 8. Exploring Alternative Coins
        1. Open source money
          1. The rise of the alt-coin
        2. Namecoin
          1. Decentralized domain name service
          2. Merged mining
        3. Litecoin
          1. Block rate
          2. Scrypt mining
        4. Peercoin
          1. Proof-of-stake
        5. Primecoin
          1. Prime numbers
          2. Mining prime numbers
        6. Evaluating an alt-coin
          1. Developer activity
            1. Launching of the alt-coin
            2. The legitimate feature set
        7. Protocols built on the Bitcoin Blockchain
          1. Digital assets
        8. Building a voting system with Counterparty
          1. The XCP alt-coin
          2. Creating a voting system
          3. Creating a wallet
          4. Funding the wallet
          5. Creating the tokens
          6. Sending tokens
            1. Casting votes
          7. Verifying the results
          8. Finishing up
        9. The future of finance
      17. Index