English | 2020 | ISBN: 1484258927 | 512 Pages | True PDF, EPUB | 10 MB
Create cryptocurrency and blockchain applications by examining the key algorithms and concepts pertaining to blockchains, transaction processing, mining, distributed consensus, and anonymous currencies. In this book, you’ll develop a fully functional cryptocurrency from scratch in the Python language. Practical Blockchains and Cryptocurrencies is a reference for development of blockchain applications and provides you with rigorous information on cryptography and the theory underlying blockchains.
This book consists of small chapters that focus on particular topics. You’ll start with a short history of money. Next, you will survey the bitcoin and altcoin ecosystem before delving into cryptographic hash functions, symmetric encryption, public key cryptography, and digital signatures. All the mathematics required to develop blockchain applications is covered. The emphasis is on providing a lucid and rigorous exposition on the nature and working of these constructs.
The next major segment of the book discusses the key concepts and algorithms required to develop blockchain and cryptocurrency applications. There are expositions on blockchain construction, Merkle trees, peer-to-peer networks, cryptocurrency addresses, transactions, and mining. You’ll take a deep dive into the formation of consensus in distributed systems.
In this book you’ll develop a fully functional cryptocurrency called Helium from scratch in Python. The language requirements are modest since it is presumed that most readers will not be acquainted with Python. The entire source code and unit test code is included in this book.
Practical Blockchains and Cryptocurrencies interleaves theory and Helium program code chapters in order to demonstrate the practical application of theory in working Helium program code.
What You Will Learn
- Gain the mathematical foundations as well as the concepts and algorithms of blockchains and cryptocurrencies
- Implement a cryptocurrency from scratch in Python
- Master the design of distributed blockchain applications