Course Code: 18949

Building BlockChain Projects

Class Dates:
1 Days
Class Time:


  • Course Overview
  • Blockchain is a decentralized ledger that maintains a continuously growing list of data records that are secured from tampering and revision. Every user is allowed to connect to the network, send new transactions to it, verify transactions, and create new blocks, making it permission-less.

    This course will teach you what Blockchain is, how it maintains data integrity, and how to create real-world Blockchain projects using Ethereum. With interesting real-world projects, you will learn how to write smart contracts which run exactly as programmed without any chance of fraud, censorship, or third-party interference, and build end-to-end applications for Blockchain.

    The blockchain is the main technical innovation of bitcoin, where it serves as the public ledger for bitcoin transactions.


Course Details

  • What You Will Learn
  • Walk through the basics of the Blockchain technology
  • Implement Blockchain’s technology and its features, and see what can be achieved using them
  • Build DApps using Solidity and Web3.js
  • Understand the geth command and cryptography
  • Create Ethereum wallets
  • Explore consortium blockchain
  • 1: Understanding Decentralized Applications
  • What is a DApp?
  • Decentralized autonomous organization
  • User identity in DApps
  • User accounts in DApps
  • Accessing the centralized apps
  • Internal currency in DApps
  • What are permissioned DApps?
  • Popular DApps
  • 2: Understanding How Ethereum Works
  • Overview of Ethereum, Ethereum accounts
  • Transactions,Consensus,Timestamp,Nonce
  • Block time, Forking, Genesis block,
  • Ether denominations, Ethereum virtual machine
  • GAS, Peer discovery, Whisper & Swarm
  • Geth, Ethereum Wallet, Mist, Weeknesses
  • Serenity
  • 3: Writing Smart Contracts
  • Solidity source files
  • The structure of a smart contract
  • Data location, What are the different data types?
  • Control structures, Creating contracts using the new operator
  • Exceptions, External function calls,
  • Features of contracts, Libraries,
  • Returning multiple values, Importing other Solidity source files,
  • Globally available variables, Ether units,
  • Proof of existence, integrity, and ownership contract
  • Compiling and deploying contracts
  • Getting Started with web3.js
  • Introduction to web3.js
  • Building a client for an ownership contract
  • 5: Building a Wallet Service
  • Difference between online and offline wallets
  • hooked-web3-provider and ethereumjs-tx libraries
  • What is a hierarchical deterministic wallet?
  • Introduction to key derivation functions
  • Introduction to LightWallet
  • Building a wallet service
  • 6: Building a Smart Contract Deployment Platform
  • Calculating a transaction's nonce
  • Introducing solcjs
  • Building a contract deployment platform
  • 7: Building a Betting App
  • Introduction to Oraclize
  • Working with strings
  • Building the betting contract
  • Building a client for the betting contract
  • 8: Building Enterprise Level Smart Contracts
  • Exploring ethereumjs-testrpc
  • What are event topics?
  • Getting started with truffle-contract
  • Introduction to truffle
  • 9: Building a Consortium Blockchain
  • What is a consortium blockchain?
  • What is Proof-of-Authority consensus?
  • Introduction to parity