Book Image

Blockchain By Example

By : Bellaj Badr, Richard Horrocks, Xun (Brian) Wu
Book Image

Blockchain By Example

By: Bellaj Badr, Richard Horrocks, Xun (Brian) Wu

Overview of this book

The Blockchain is a revolution promising a new world without middlemen. Technically, it is an immutable and tamper-proof distributed ledger of all transactions across a peer-to-peer network. With this book, you will get to grips with the blockchain ecosystem to build real-world projects. This book will walk you through the process of building multiple blockchain projects with different complexity levels and hurdles. Each project will teach you just enough about the field's leading technologies, Bitcoin, Ethereum, Quorum, and Hyperledger in order to be productive from the outset. As you make your way through the chapters, you will cover the major challenges that are associated with blockchain ecosystems such as scalability, integration, and distributed file management. In the concluding chapters, you’ll learn to build blockchain projects for business, run your ICO, and even create your own cryptocurrency. Blockchain by Example also covers a range of projects such as Bitcoin payment systems, supply chains on Hyperledger, and developing a Tontine Bank Every is using Ethereum. By the end of this book, you will not only be able to tackle common issues in the blockchain ecosystem, but also design and build reliable and scalable distributed systems.
Table of Contents (13 chapters)

Implementing our token sale contract

Our token sale contract will handle the mechanics of buying and selling our token in ether. To do this, our token sale contract will have to communicate with our ERC-20 contract in order to perform transfers from our token sale contract's balance to the balances of participants. For this communication, the token sale contract must know which functions are supported in our ERC-20 contract. This can be done in one of two ways:

  • Define an interface: We can use Solidity's interface keyword to define the parts of the ERC-20 contract that the token sale contract needs to use. We would make this declaration in the same file, above the token-sale contract body.
  • Import the ERC-20 contract: We can use an import statement to include the entire ERC-20 contract. For our implementation, this is the method we'll use.

First, create a new...