Ethereum Smart Contract Development
上QQ阅读APP看书,第一时间看更新

Smart contract on a private blockchain

Let us do some grown-up stuff now. Yes, we are still not going to spend any fiat money to buy ethers to code on a blockchain. Rather we will do the following:

  1. Write a genesis block file for a private blockchain.
  2. Create the private blockchain using geth commands.
  3. Link the private blockchain with the MIST browser.
  4. Mine the chain to generate our own ethers as rewards.
  5. Use those ethers to deploy a smart contract on our very own private blockchain.

The pre-requisite tools to be installed are as follows:

I am not going into the details of the installation. The installations are pretty straightforward, involving the terms and conditions page (which we never read), followed by blind-surfing of Next and I Agree buttons, and while the installations are going on, watching some random YouTube videos or stand-up comedians to entertain ourselves.

For troubleshooting, Google and the stack exchange are your best friends, ever. Figure 3.21, Figure 3.22, Figure 3.23, Figure 3.24, Figure 3.25, and Figure 3.26 are provided for your reference, to check whether you are on the right track during installation, especially for MIST, geth, Cygwin, and Node.js. The only recommendation is to try to keep all these installation, in one separate folder in a separate drive, apart from .NET framework, so that they do not mess up your main program files. My downloads and installations were inside F:Ethereum_Environment path:

Figure 3.21: Mist installer package
Figure 3.22: Default start of MIST on RINKEBY public blockchain (avoid this step)
Figure 3.23: Geth download page
Figure 3.24: Geth Successful Installation page
Figure 3.25: Cygwin Setup
Figure 3.26: Node.js Setup Wizard