Book Image

Ethereum Smart Contract Development

By : Mayukh Mukhopadhyay
Book Image

Ethereum Smart Contract Development

By: Mayukh Mukhopadhyay

Overview of this book

Ethereum is a public, blockchain-based distributed computing platform featuring smart contract functionality. This book is your one-stop guide to blockchain and Ethereum smart contract development. We start by introducing you to the basics of blockchain. You'll learn about hash functions, Merkle trees, forking, mining, and much more. Then you'll learn about Ethereum and smart contracts, and we'll cover Ethereum virtual machine (EVM) in detail. Next, you'll get acquainted with DApps and DAOs and see how they work. We'll also delve into the mechanisms of advanced smart contracts, taking a practical approach. You'll also learn how to develop your own cryptocurrency from scratch in order to understand the business behind ICO. Further on, you'll get to know the key concepts of the Solidity programming language, enabling you to build decentralized blockchain-based applications. We'll also look at enterprise use cases, where you'll build a decentralized microblogging site. At the end of this book, we discuss blockchain-as-a-service, the dark web marketplace, and various advanced topics so you can get well versed with the blockchain principles and ecosystem.
Table of Contents (18 chapters)
Title Page
Dedication
Packt Upsell
Contributors
Preface
Index

Types of blockchain


Before we dive into the types of blockchain, we must get familiar with the concept of the permission spectrum of distributed ledger technology aka DLT. A blockchain is a DLT and exists throughout the permission spectrum.

To understand the permission spectrum, we need to identify the two extreme ends of this spectrum. At one end, we have to seek complete permission from an entity to participate in a consensus, and at the other extreme, we do not have to seek any permissions whatsoever from any entity to participate in a consensus.

The interesting thing about the permissionless extreme is that we have no obligation to reveal our identity to anyone participating in the consensus. As we move toward complete permission, somewhere in the mid-spectrum of permission, this identity aspect needs to be revealed in order to participate in a consensus, just to validate our stakes in a consensus. As we arrive at the complete permission, we need to identify ourselves as well as take permission...