lørdag 7. februar 2015

Mastering Bitcoin

Litteraturen om kryptovaluta og Bitcoin er i kraftig vekst og boka "Mastering Bitcoin - Unlocking Digital Cryptocurrencies" av Andreas Antonopolous er førebels eit høgdepunkt. Boka er gitt ut av O'Reilly Media og Tim O'Reilly har vist tidlegare å ha god teft og han har sett at Bitcoin-teknologien representerer eit viktig gjennombrot. Her er hans innleiing til O'Reilly sitt Bitcoin-seminar nyleg.

Andreas Antonopolous er truleg den utanom kjerneutviklarane i Bitcoin-systemet som har best innsikt i teknologien. Antonopolous seier sjølv om bakgrunnen for å skriva boka at det var den beste måten å læra seg Bitcoin på ("the best way to learn something is to teach it!"). Andreas A. veit kva han snakkar om for han underviser også, mellom anna på kurset Digital Currency ved universitetet i Nicosia. Her kan du faktisk ta ein mastergrad i emnet ved å følgja undervisinga via nettet.

Andreas er fødd og oppvaksen i Hellas, men tok IT-utdanninga i London før han flytta vidare til USA. Spesialområdet hans er sikkerheit og cloud computing, men etter at han - ganske seint - oppdaga Bitcoin, har det meste dreia seg om den teknologien. Han er eit mykje brukt foredragshaldar.

Boka "Mastering Bitcoin" er akkurat så teknisk som du forventar av ein person som AA, men boka passar også for dei som ikkje driv utvikling. Du skal likevel ha ei viss interesse for dei tekniske sidene ved Bitcoin for å få fullt utbyte.

Boka har desse kapitla:

Chapter 1: Introduction
   What Is Bitcoin?
   History of Bitcoin
   Bitcoin Uses, Users, and Their Stories
   Getting Started

Chapter 2: How Bitcoin Works
   Transactions, Blocks, Mining, and the Blockchain
   Bitcoin Transactions
   Constructing a Transaction
   Bitcoin Mining
   Mining Transactions in Blocks
   Spending the Transaction

Chapter 3: The Bitcoin Client
   Bitcoin Core: The Reference Implementation
   Using Bitcoin Core’s JSON-RPC API from the Command Line
   Alternative Clients, Libraries, and Toolkits

Chapter 4: Keys, Addresses, Wallets
   Introduction
   Bitcoin Addresses
   Implementing Keys and Addresses in Python
   Wallets
   Advanced Keys and Addresses

Chapter 5: Transactions
   Introduction
   Transaction Lifecycle
   Transaction Structure
   Transaction Outputs and Inputs
   Transaction Chaining and Orphan Transactions
   Transaction Scripts and Script Language
   Standard Transactions

Chapter 6: The Bitcoin Network
   Peer-to-Peer Network Architecture
   Nodes Types and Roles
   The Extended Bitcoin Network
   Network Discovery
   Full Nodes
   Exchanging “Inventory”
   Simplified Payment Verification (SPV) Nodes
   Bloom Filters
   Bloom Filters and Inventory Updates
   Transaction Pools
   Alert Messages

Chapter 7: The Blockchain
   Introduction
   Structure of a Block
   Block Header
   Block Identifiers: Block Header Hash and Block Height
   The Genesis Block
   Linking Blocks in the Blockchain
   Merkle Trees
   Merkle Trees and Simplified Payment Verification (SPV)

Chapter 8: Mining and Consensus
   Introduction
   Decentralized Consensus
   Independent Verification of Transactions
   Mining Nodes
   Aggregating Transactions into Blocks
   Constructing the Block Header
   Mining the Block
   Successfully Mining the Block
   Validating a New Block
   Assembling and Selecting Chains of Blocks
   Mining and the Hashing Race
   Consensus Attacks

Chapter 9: Alternative Chains, Currencies, and Applications
   A Taxonomy of Alternative Currencies and Chains
   Meta Coin Platforms
   Alt Coins
   Noncurrency Alt Chains
   Future of Currencies

Chapter 10: Bitcoin Security
   Security Principles
   User Security Best Practices
   Conclusion

Appendix: Transaction Script Language Operators, Constants, and Symbols
Appendix: Bitcoin Improvement Proposals
Appendix: pycoin, ku, and tx
Appendix: Available Commands with sx Tools

Ingen kommentarer: