Instructor Led Online Classroom


Key Features:
  • 50+ hands-on exercises using Blockchain technology
  • 9 practical projects covering Ethereum, Hyperledger and Bitcoin
  • Case Studies included
  • Course completion certificate
  • 100% Money Back Guarantee*

October 2018

Batch - 1
October 06 - October 28, 2018 | 09:00 - 13:00

November 2018

Batch - 1
November 24 - December 16, 2018 | 09:00 - 12:00
Contact Us


MSys Training’s Blockchain Certification Training has been designed for developers who want to decipher the global craze surrounding Blockchain, Bitcoin and cryptocurrencies. You’ll learn the core structure and technical mechanisms of Bitcoin, Ethereum, Hyperledger and Multichain Blockchain platforms, use the latest tools to build Blockchain applications, set up your own private Blockchain, deploy smart contracts on Ethereum and gain practical experience with real-world projects.

Exam and Certification

How do I become a blockchain expert?

Blockchain experts should have basic coding skills such as Javascript, HTML, CSS and NPM and pass the Blockchain certification course offered by MSys Training.


Who provides the certification?

After successful completion of the Blockchain certification training, you will be awarded the course completion certificate from MSys Training.


Is this Blockchain course accredited?

No, this  course is not accredited.


What do I need to do to unlock my MSys Training certificate?

After completing 85% of the online self learning successfully, you will be able to unlock your MSys Training certificate.


How long does it to take to complete the Blockchain certification course?

It will take about 45 - 50 hours to complete the Blockchain certification course.


How many attempts do I have to pass the Blockchain certification exam?

You have a maximum of three attempts to pass the Blockchain certification exam. MSys Training provides guidance and support for learners to help them pass the exam.


How long does it take to receive the Blockchain course certification?

Upon successful completion of the Blockchain certification course, you will immediately receive the Blockchain course certificate.


How long is the Blockchain course certificate valid for?

The Blockchain course certification from MSys Training has lifelong validity.


If I fail the Blockchain course, how soon can I retake it?

You can re-attempt it immediately, but you have a maximum of three attempts total.


Can I cancel my enrollment? Will I get a refund?

Yes. You can cancel your enrollment. We will provide you a complete refund after deducting the administration fee. To learn more, please refer to our refund policy.


Who are our instructors and how are they selected?

All of our highly qualified trainers are industry experts with at least 10-12 years of relevant teaching experience. Each of them has gone through a rigorous selection process that includes profile screening, technical evaluation, and a training demo before they are certified to train for us. We also ensure that only those trainers with a high alumni rating remain on our faculty.


Do you provide a money-back guarantee?

Yes. We provide a seven-day money-back guarantee for our master’s programs. Refer to our Refund Policy and submit refund requests via our Help and Support portal.


How do I enroll for the online training?

You can enroll for this training on our website and make an online payment using any of the following options:

  •       Visa Credit or Debit Card
  •       MasterCard
  •       American Express
  •       Diner’s Club
  •       PayPal

Once payment is received you will automatically receive a payment receipt and access information via email.


How can I learn more about this training program?

Contact us using the form on the right of any page on the MSys Training website, or select the Live Chat link. Our customer service representatives can provide you with more details.


What is Global Teaching Assistance?

Our teaching assistants are a dedicated team of subject matter experts here to help you get certified in your first attempt. They engage students proactively to ensure the course path is being followed and help you enrich your learning experience, from class onboarding to project mentoring and job assistance. Teaching Assistance is available during business hours.


Lesson​ ​0:​ ​Blockchain

What is Blockchain

Blockchain Technology Mechanisms & Networks

Blockchain Origins

Blockchain Objectives

Blockchain Users And Adoption

Blockchain Challenges

Transactions And Blocks

P2P Systems

Keys As Identity

Digital Signatures

Hashes As Addresses

Hash Pointers And Data Structures

Blockchain Transactions

Blockchain Block Structure

Mining Explained

Lesson​ ​1:​ Bitcoin

What is Bitcoin

The Bitcoin Network

The Bitcoin Mining Process

Mining Developments

Bitcoin Wallets

Decentralization And Hard Forks

Alternative Blockchains/Altchains

Ethereum Consensus Mechanisms

How Smart Contracts Work

Difference Between Private Consortium And Public Networks

Ethereum Virtual Machine (EVM)

Merkle Tree

Double-Spend Problem

New Developments In Blockchain

Ethereum’s Ecosystem And Dapps

Blockchain And Digital Currency

Transactional Blocks

Impact Of Blockchain Technology On Cryptocurrency


Lesson​ ​2:​ ​Ethereum

What is Ethereum?


A Short History Lesson

Interfacing with Ethereum Networks

Metamask Setup

Ethereum Accounts

Receiving Ether

What's a Transaction?

Smart Contracts

Our First Contract

Contract Structure

Function Declarations

Testing with Remix

Redeploying Contracts

Behind the Scenes of Deployment

More on Running Functions Than You Want to Know

Wei vs Ether

Gas and Transactions

Mnemonic Phrases

Getting More Ether

Lesson​ ​3:​ Solidity Programming for Ethereum

Solidity - Language of Smart Contracts

Installing Solidity & Ethereum Wallet

Basics of Solidity by Example: Subcoin Smart Contract

Layout of a Solidity Source File & Structure of Smart Contracts

General Value Types (Int, Real, String, Bytes, Arrays, Mapping, Enum, address)

Ether Units, Time Units

Lesson​ ​4:​ ​Ethereum coding for Blockchain environment

Globally Available Variables & Functions

Operators: Arithmetic, Logical & Bitwise Operators

Control Structure (if-else, for, while, Do-While)

Scoping and Declarations

Input Parameters and Output Parameters

Function Calls & Return Types

Function Modifiers

Fallback Function

Abstract Contract

Creating Contracts via "new" Operator

Inheriting Smart Contracts

Importing Smart Contracts & Compiling Contracts

Events & Logging


Don't Skip! Node JS Versioning

Lesson​ ​5:​ ​Contract Deployment for Blockchain Environment

Boilerplate Requirements

Project File Walkthrough

Syntax Highlighters

Compiling Solidity

The Compile Script

Testing Architecture

Running Windows?

Installing Modules

Web3 Versioning

Web3 Providers

Testing with Mocha

Mocha Structure

Fetching Accounts from Ganache

Refactor to Async/Await

Deployment with Web3

Deployed Inbox Overview

Asserting Deployment

Web3 Version Fix

Verifying the Initial Message

Testing Message Updates

Deployment with Infura

Infura Signup

Wallet Provider Setup

Deployment to Rinkeby

Observing Deployment on Etherscan

Deployed Contracts in Remix

Complete Example: Crowd Funding Smart Contract

Complete Example: Voting Ballot Smart Contract

Lesson​ ​6:​ ​Advanced Smart Contracts

The Lottery Contract

Lottery Design

Basic Solidity Types

Starting the Lottery Contract

The Message Global Variable

Overview of Arrays

Overview of Mappings and Structs

Big Solidity Gotcha

Entering the Lottery

Validation with Require Statements

The Remix Debugger

Pseudo Random Number Generator

Selecting a Winner

Sending Ether from Contracts

Resetting Contract State

Requiring Managers

Function Modifiers

Returning Players Array

Contract Review

Lesson​ ​7:​ ​Ethereum Test Environment Setup

Test Project Updates

Test Helper Review

Asserting Deployment

Entering the Lottery

Asserting Multiple Players

Try-Catch Assertions

Testing Function Modifiers

End to End Test

Building Interactive Front-Ends

Lesson​ ​8:​ Ethereum Application Architecture

Application Overview

Getting Started with Create-React-App

Multiple Web3 Instances

Web3 Setup

Deploying the Lottery Contract

Local Contract Instances

Rendering Contract Data

Instance Properties

Accessing More Properties

The 'Enter' Form

Form Setup

Entering the Lottery

Picking a Winner

Project Review

Lesson​ ​9:​ Real World Ethereum Projects

Solving Real Problems with Contracts

Fixing Kickstarter's Issues

Campaign Contract Design

Campaign Constructor

Contributing to the Campaign

A Quick Test

The Request Struct

More on Function Modifiers

Creating Struct Instances

Instance Creation Syntax

Storage and Memory

More on Storage vs Memory

Voting System Requirements

The Wrong Voting System

Issues with Arrays

Mappings vs Arrays

Basics of Mappings

Refactoring to Mappings

Refactoring Request Stucts

More on Struct Initialization

Approving a Request

Testing Request Approvals

Finalizing a Request

Last Remix Test

Thinking about Deployment

Solution to Deployment

Adding a Campaign Factory

Testing the Factory

Lesson​ ​10:​ Creating Project Infrastructure for Ethereum

Project Setup

Directory Structure

A Better Compile Script

Single Run Compilation

More on Compile

Test File Setup

Creating Campaign Instances

Testing Warmup

Accessing Mappings

Requiring Minimum Contributions

Array Getters

One End to End Test


Refactoring Deployment

Advanced Multi-Page Front-Ends

App Mockups

CRA vs Next

Next's Pages Architecture

Basics of Next Routing

Root Routes

CampaignFactory Instance

Getting a Test Campaign

Fetching Deployed Campaigns

Why Next.js?

Server vs Client Web3 Instances

GetInitialProps Function

Semantic UI React

Card Group Setup

Rendering Card Groups

Adding CSS

Adding a Button

The Need for a Layout

The Layout Component

Assembling a Header

Constraining Content Width

Two Column Layout

Nested Routing

Final CSS Fix

Form Creation

Input Change Handlers

Form Submittal

Testing Submittal

Form Error Handling

Button Spinners

Routing Issues

Next Routes Setup

Automatic Navigation

Header Navigation

Routing to Campaigns

Restarting the Server

Route Mappings

Lesson​ ​11:​ Ethereum Campaigns

Planning CampaignShow

Redeploying CampaignFactory

CampaignShow's GetInitialProps

Accessing a Campaign

Summary Translation Layer

Custom Card Groups

One Card Per Property

The Contribute Form

Grid Layouts

Form State

Communicating the Campaign Address

Making a Contribution

Refreshing Contract Data

Spinners and Error Handlers

Listing Requests

Grids vs Columns

More Routing!

Request Creation Form

Creating a Request

Form Polish

Creating a Request

Requests One by One

Fancy Javascript

Small Typo!

Rendering a Table

Request Row Component

Request Row Content

Approvers Count Cell

Approving a Request

Finalizing Requests

Testing Finalization

Row Status Styling

Finishing Requests Index

Lesson​ ​12:​ Introduction to Hyperledger

What is Hyperledger?

Distributed Ledger Technology & its Challenges

Hyperledger & Distributed Ledger Technology

Lesson​ ​13:​ Introduction to Hyperledger Fabric using Composer

Hyperledger Fabric & Composer Concepts

Hyperledger Fabric : A DLT for Business Applications

Hyperledger Fabric : DLT for Business

Assets, Chaincode & Ledger

Assets, Chaincode and Transactions

Permissioned Network, Members & Membership Service Provider

Permissioned Network, Member & Membership Services

Nodes and Channels

Hyperledger Fabric Composer Overview

Pre-Requisites for Fabric development

Frequently Asked Questions | Common Issues

Development Machine Specifications & IDE

Composer Dev Tools Installation

Exercise: Validate the Composer Development Environment

Install Docker or Docker Toolkit

Install CURL and Cygwin (Windows only)

Lesson​ ​14:​ Setting up the Hyperledger Fabric Developer Environment Tools

Linux/Ubuntu & AWS: Setup of Fabric Development on Local & Cloud VM

Mac OS: Setup of Fabric Development Environment

Windows : Fabric development environment setup

How to use the Dev Tools

Development Environment Topology

Fabric Under the Hood (Concepts & Terminology)

Ledger Implementation

Dev Environment Walkthrough: Peer & CouchDB setup

Ledger Implementation

Peers Nodes : Anchors and Endorsers

Anchor Peers & Endorsing Peers

Clients Node: Endorsement Policies

Client Peer & Endorsing Policies

Orderer Nodes

Membership Service Provider & Certification Authority

Dev Environment Walkthrough: Orderer and CA Server

Chaincode Development

Lesson​ ​15:​ Hyperledger Composer tools for application development

Linux/Ubuntu & AWS: Setup of Fabric Development on Local & Cloud VM

Mac OS: Setup of Fabric Development Environment

Windows : Fabric development environment setup

How to use the Dev Tools

Development Environment Topology

Fabric Under the Hood (Concepts & Terminology)

Ledger Implementation

Dev Environment Walkthrough: Peer & CouchDB setup

Ledger Implementation

Peers Nodes : Anchors and Endorsers

Anchor Peers & Endorsing Peers

Clients Node: Endorsement Policies

Client Peer & Endorsing Policies

Orderer Nodes

Membership Service Provider & Certification Authority

Dev Environment Walkthrough: Orderer and CA Server

Chaincode Development

Lesson​ ​16:​ ​Front end application development using Hyperledger composer

Developing Front End Applications for Network Applications

Application Design Patterns

Application Architecture Patterns

Securing the REST server with Authentication Strategy

Walkthrough: Applying OAuth2.0 Authentication Strategy to REST Server

Working of Multi User Enabled REST Server

Walkthrough - REST Server Multi User mode

Create the Design Blueprint for the Fabric Application UI