Preface
The goal of this book is to teach the theory and practice of distributed ledger technology to anyone interested in learning this fascinating new subject. Anyone can benefit from this book, whether a seasoned technologist, student, business executive, or enthusiast. To this end, I aim to provide a comprehensive and in-depth reference of distributed ledger technology that serves the expert and is also accessible to beginners. I primarily focus on describing the core characteristics of blockchain so that readers can build a strong foundation on which to build further knowledge and expertise. The main topics include core blockchain principles, cryptography, consensus algorithms, distributed systems theory, and smart contracts. In addition, practical topics such as programming smart contracts in solidity, building blockchain networks, using blockchain development frameworks such as Truffle, and writing decentralized applications and descriptions constitute a significant part of this book. Moreover, many types of blockchains, related use cases, and cross-industry applications of blockchain technology are discussed in detail.
This book is a unique blend of theoretical principles and hands-on application. Readers will not only be able to understand the technical underpinnings of this technology, but they will also be able to write code for smart contracts and build blockchain networks. Practitioners can use this book as a reference, and it can also serve as a textbook for students wishing to learn this technology. Indeed, some institutions have adopted previous editions of this book as a primary textbook for their courses on blockchain technology.
This book has six new chapters on the latest topics in blockchain, including scalability, security, privacy, the Ethereum Merge, decentralized identity, and decentralized finance.
I hope that this work will serve well technologists, teachers, students, scientists, developers, business executives, and anyone who wants to learn this fascinating technology for many years to come.