Building
Enterprise Blockchain
Solutions on AWS
A Developer's Guide to Build, Deploy, and
Managed Apps Using Ethereum,
Hyperledger Fabric, and AWS Blockchain
Murughan Palaniachari
www.bpbonline.com
FIRST EDITION 2021
Copyright BPB Publications, India
ISBN: 978-93-90684-434
All Rights Reserved. No part of this publication may be reproduced, distributed or transmitted in any form or by any means or stored in a database or retrieval system, without the prior written permission of the publisher with the exception to the program listings which may be entered, stored and executed in a computer system, but they can not be reproduced by the means of publication, photocopy, recording, or by any electronic and mechanical means.
LIMITS OF LIABILITY AND DISCLAIMER OF WARRANTY
The information contained in this book is true to correct and the best of authors and publishers knowledge. The author has made every effort to ensure the accuracy of these publications, but publisher cannot be held responsible for any loss or damage arising from any information in this book.
All trademarks referred to in the book are acknowledged as properties of their respective owners but BPB Publications cannot guarantee the accuracy of this information.
Distributors:
BPB PUBLICATIONS
20, Ansari Road, Darya Ganj
New Delhi-110002
Ph: 23254990/23254991
MICRO MEDIA
Shop No. 5, Mahendra Chambers,
DN Rd. Next to Capital Cinema,
V.T. (C.S.T.) Station, MUMBAI-400
Ph: 22078296/22078297
DECCAN AGENCIES
4-3-329, Bank Street,
Hyderabad-500195
Ph: 24756967/24756400
BPB BOOK CENTRE
Old Lajpat Rai Market,
Delhi-110006
Ph: 23861747
Published by Manish Jain for BPB Publications, Ansari Road, Darya Ganj, New Delhi-110002 and Printed by him at Repro India Ltd, Mumbai
www.bpbonline.com
Dedicated to
My beloved twin babies,
Mishi
Nivin
&
My wife Karishma
About the Author
Murughan Palaniachari is a developer, speaker, blogger, trainer, DevOps, and Blockchain expert.
He has 14+ years of software development and operations experience in multiple technology stacks, including C#, Javascript, NodeJS, Java, Python, and Blockchain. He has expertise in Blockchain, Ethereum, Solidity, Hyperledger Fabric, and Cryptocurrency. He is an expert in building Enterprise Blockchain solutions using Ethereum, Hyperledger Fabric, and Stellar.
He is an organizer of TAC (Technical Agility Conference), meetup organizer of Blockchain, DevOps, and Cloud.
About the Reviewer
Mrugesh Patel is a strategic thinker and entrepreneur at heart. He can still write code with the best of them, and also understand what makes a product and business great.
He is passionate about building talented, healthy, and motivated engineering organizations and leading them to accomplish extraordinary things. He cares deeply about organizational health and principled leadership, as these are the greatest drivers for any team to harness its maximum potential.
He believes success is far more achievable, and with fun, when one has a healthy, engaged, and talented workforce led by leaders with unquestionable integrity and full transparency.
He considers himself fortunate that he has been a part of some noteworthy engineering teams, and built, and led some great ones too. He values strong relationships and builds high performing teams that are built on trust.
Currently, he is an Engineering Manager as well as a Technical founder in Tech Startups. He has more than 16+ years of experience in Software Development with various technologies, including AWS and Blockchain. He has been part of a successful startup from stealth mode to successful exit and well-established MNC companies.
Acknowledgement
There are a few people I want to thank for the continued and ongoing support that they have given me during the writing of this book. First and foremost, I would like to thank my wife (Karishma G H) for continuously encouraging me to write this book I could have never completed it without her support.
I am grateful to the course and the companies which provided me with support throughout the learning process of Building Enterprise Blockchain solutions on AWS. Thank you for all the hidden support provided. I gratefully acknowledge Mr. Mrugesh Patel for a technical review of this book.
My gratitude also goes to the team at BPB Publications for being supportive enough to provide me with time to finish the first part of the book and also allow me to publish the book in multiple parts. Image processing, being a vast and very active area of research, was impossible to deep-dive into different class of problems in a single book without making it too voluminous.
Preface
This book covers the practical implementation of blockchain applications across Healthcare, Banking, and Finance. It contains a step-by-step guide to building dApps with Hyperledger Fabric and Ethereum, writing smart contracts with Solidity and nodejs chain code, and deploying and managing scalable private blockchain network on AWS Blockchain.
This book is divided into chapters. They cover Blockchain overview, AWS Blockchain offerings, Amazon Quantum Ledger Database, Hyperledger Fabric, AWS Managed Blockchain, Nodejs chain code, Ethereum, Solidity smart contract language, and AWS Blockchain templates. The details are listed as follows:
Chapter will cover what a blockchain is, why a blockchain, Issues with Web2.0 and centralized infrastructure, features of a blockchain, how a blockchain works, consensus mechanism algorithms, public blockchain, private and permissioned blockchain, criteria to choose a blockchain, and blockchain use-cases.
Chapter will cover the problems with self-hosting a blockchain network, understanding of an Amazon managed blockchain, AWS blockchain templates, Amazon Quantum Ledger Database, advantages of using AWS blockchain services, when to use these services, and who is using AWS blockchain services.
Chapter will cover the understanding of a record keeping system, auditing in a bank, deep diving into QLDB, working of QLDB, and building a record keeping database with QLDB for banking auditing.
Chapter will cover Hyperledger Fabric overview, features of Hyperledger Fabric, when to use Hyperledger Fabric, Hyperledger Fabric architecture, Hyperledger Fabric workflow, Hyperledger Fabric models, Hyperledger Fabric network components, Hyperledger Fabric consensus, and application transaction flow.