Blockchain Applications: A Hands-On Approach

In the US, the services sector provides employment to about 100 million, while the manufacturing sector provides employment to about 20 million. These sectors are highly automated, and driven by sophisticated business processes forming an integral part of the digital economy. While the applications themselves may be distributed over the Internet in time and space, the core business, regulatory, and financial aspects of the digital economy are still centralized, with the need for centralized agencies (such as banks, customs authorities, and tax agencies) to authenticate and settle payments and transactions. These centralized services often are manual, difficult to automate, and represent a bottleneck to facilitating a frictionless digital economy. The next revolutionary step in the services and manufacturing economy of the future is the development of automated distributed applications that do not depend on these traditional centralized agencies for controlling, facilitating and settling multi-party transactions that may themselves be subject to complex contractual constraints. The blockchain technology is an integral part of these next steps that promises a smart new world of automation of complex services and manufacturing processes. Blockchain is a distributed and public ledger which maintains records of all the transactions on a blockchain network comprising suppliers of products and services and consumers. With the blockchain's ability to establish trust in a peer-to-peer network through a distributed consensus mechanism rather than relying on a powerful centralized authority, the technology is being seen by the industry experts as one of the greatest innovations since the invention of the Internet. As per Santander, blockchain technologies can reduce annual costs for financial firms by $20b by streamlining processes and improving efficiency. In addition, investment and spending on blockchain technology is expected to increase at a compound annual growth rate (CAGR) of 52% through 2019. We have written this textbook, as part of our expanding "A Hands-On Approach"(TM) series, to serve as a textbook for senior-level and graduate-level courses on financial and regulation technologies, business analytics, Internet of Things, and cryptocurrency. This book is also written for use within industries in the FinTech and RegTech space that may be interested in rolling out products and services that utilize this new area of technology. An accompanying website for this book contains additional support for instruction and learning (www.blockchain-book.com). The book is organized into three main parts, comprising a total of ten chapters. Part I provides an introduction to blockchain concepts, design patterns, and architectures for blockchain applications. A blockchain stack comprising a decentralized computation platform, a decentralized messaging platform, and a decentralized storage platform is described. Part II introduces the readers to tools and platforms for blockchain, such as Geth, PyEthApp, TestRPC, Mist Ethereum Wallet, MetaMask, Web3 JavaScript API and the Truffle Dapp framework. Implementation examples of various smart contracts and decentralized applications (Dapps) are provided. Part III focuses on advanced topics such as the security and scalability related challenges for the blockchain platforms.