Blockchain Development and Hyperledger Fabric

Learn the basics of blockchain, cryptocurrencies, and smart contracts. This course covers Web 3.0, blockchain security, and Hyperledger Fabric development, focusing on smart contract creation and network setup.

Objective

  • Understand blockchain fundamentals and network types.
  • Learn about blockchain security and cryptography.
  • Develop smart contracts using Golang in Hyperledger Fabric.
  • Deploy and manage a blockchain network using Hyperledger tools.
  • Implement chaincode for distributed ledger applications.

Curriculum

Web 3

  • Web 3 basics
  • Cryptocurrencies

Yaml

  • Introduction To YAML
  • Understand syntax of YAML

Linux Fundamental

  • Introduction to Linux OS
  • Basic Linux Command
  • User and Group management
  • Environment Variable
  • Introduction to Shell Scripting
  • Variables and Input
  • Control Structures
  • Functions

Docker

  • Introduction to Docker
  • Docker Command
  • Docker Hub

Docker Deployment

  • Docker File
  • Docker Deployment
  • Docker Stroage
  • Docker Compose

Golang (1)

  • Overview of Golang
  • Program Structure
  • Language Fundamental
  • Control Flow
  • Function
  • Custom Package
  • Data Structure
  • Type casting

Golang (2)

  • Struct and Method
  • Channels
  • Interface
  • Standard Library
  • Package Layout
  • Go Package Management
  • Error Handling
  • JSON Encode, Decode
  • Install 3rd Party Libraries
  • Golang RESTful API

CouchDB (1)

  • Introduction
  • Why CouchDB?
  • Installation / Setup
  • Data Model of CouchDB
  • Feature of CouchDB
  • cURL utility & Fauxton
  • HTTP & API on CouchDB
  • Working with CouchDB

CouchDB (2)

  • HTTP & API on CouchDB
  • Working with CouchDB
  • Design Documents
  • Security
  • Cluster Management
  • Maintenance

Introduction to Blockchain

  • What is Blockchain?
  • Advantages of using blockchain
  • What is the network in Blockchain?
  • Blockchain History
  • Blockchain vs. Bitcoin
  • Blockchain Architecture
  • Type of Blockchain
  • Blockchain Use Case
  • Blockchain vs Relational Database

Blockchain Networks and Mechanisms

  • Comparison between Centralized, Decentralized and Distributed Network
  • Type of Blockchain Network
  • Transaction in Distributed Network
  • Blockchain technology and its mechanism

Blockchain Security and Principles

  • Key Principle of Blockchain
  • Why Blockchain is secure
  • Block and transactions in Blockchain
  • Comparison of Blockchain Framework
  • Cryptography Fundamental

Public vs Private Blockchain

  • Compare Transaction in private and public blockchain

Hyperledger (1)

  • Introduction to Hyperledger Project (v2.x)
  • What is Hyperledger Fabric?
  • HLF Architecture
  • HLF Component
  • Type of Peers
  • Transaction Lifecycle
  • Endorsement Policy
  • Privacy through Channel
  • Member Service Provider (MSP)

Hyperledger (2)

  • Generate the network's cryptographic material
  • Peer Organization
  • Orderer Organizations

Hyperledger (3)

  • Peer channel binary
  • Create channel from channel configuration & add to orderer
  • Override configuration file to Environment variable

Chaincode/Smart Contract Development (Golang)

  • What is Chaincode?
  • Functionality of Chaincode
  • Chaincode lifecycle (2.x)
  • Prepare Chaincode
  • Install Chaincode
  • Instantiate Chaincode
  • Invoke Chaincode
  • Query for the new values
  • Update chaincode
  • Error Handling
  • How to write Chaincode in Go
  • Chaincode Interface
  • Functions of Chaincode
  • Error Handling
  • Query & Update entry

Chaincode Testing

  • Fabric CA Client
  • Interact with Fabric CA Server
  • Create user identity
  • Revoke identity
  • Re Enroll identity
  • Renew Certificate

Application Lifecycle Management Understanding

  • Install and Instantiate Chaincode in new/existing Channel
  • Configure Endorsement Policy
  • Modify or Upgrade Chaincode

Network Maintenance and Operations

  • Add a New Organization on the same Host Machine

Hyperledger Tools

  • Introduction To Hyperledger Explorer
  • Block Details Peer List
  • Chaincode List
  • Transaction Details
  • Installation of Hyperledger Explorer
  • Starting the Explorer App

Fabric Raft Setup Understanding

  • Introduction to Raft Consensus
  • Raft type Ordering service
  • Setup Orderer TLS
  • Setup Raft Orderer Cluster
  • Expand the Raft Cluster and validate Fault Tolerance

Chaincode Development

  • Chaincode as Service
  • Chaincode as External Service (2.x)

Network Deploy Improvement

  • Understanding
  • Improve repetitive task configuration

Hyperledger Composer

  • What is Hyperledger Composer
  • Using Composer playground
  • Yeoman Hyperledger generator
  • Yo Generator
  • Composer CLI
  • Composer SDK

MiniFabric

  • Setup mini fabric for faster development of Hyperledger Fabric

Fabric Network Monitoring Using Prometheus

  • Understanding

Fabric Network Operation Console

  • Understanding