Blockchain Revolution

  • Blockchain Intro
  • Why Blockchain?
  • Influence of Blockchain
  • Blockchain Overview

Message Signature

  • Sign and Verify a Message
  • Generate Private Public Keys using a Wallet Address
  • Sign a Message
  • Verify a Message Signature

Bitcoin Core Testnet

  • Bitcoin Core
  • Networks
  • Mainnet vs Testnet
  • Testnet vs Regression
  • Testing
  • Data Warnings and
  • Bitcoin.config Setup
  • Wallet Overview
  • Network Demonstration
  • Get Testnet Coins
  • Testnet Wallet Transactions
  • Block Explorer

Blockchain Identity

  • Blockchain Fundamentals
  • Financial Transactions
  • Introduction to Bitcoin
  • Hashing
  • Practice Hashing
  • Blocks
  • Distributed Peer-to-Peer
  • Network
  • Memory Pool
  • Consensus
  • Proof of Work
  • Proof of Stake
  • Delegated Byzantine Fault Tolerance

Bitcoin Debug Console

  • Terminal Overview
  • Debug Console
  • Blockchain Commands
  • Hash Commands
  • Block Commands
  • Wallet Commands
  • Mempool Commands
  • Transaction Commands
  • Signature Commands
  • Network Commands
  • Mining Commands
  • Bitcoin-CLI

Blockchain Data

  • Blockchain as a Dataset
  • Blockchain vs Traditional Databases
  • Blockchain Types
  • P2P Network vs Client-
  • Server Model
  • Explore Blockchain Data
  • Explore Bitcoin’s Codebase
  • BIPs and Forks

Blockchain Data

  • Blockchain Data Models Overview
  • Transactions – Inputs and Outputs
  • Transaction Data Models
    Bitcoin Scripts
  • ¬†Opcodes
  • Attributes of Script
  • Raw Transaction Review
  • Create Raw Transaction
  • Create a Transaction
  • Embedding Data in Transactions
  • Embedding Data in Bitcoin Core
  • Ethics of Embedding Data

Private Blockchains

  • Public and Private Blockchains
  • Build a Simple Private Blockchain
  • Working with Your Workspace
  • Block Data Model
  • Create New Blocks
  • Store Blocks
  • Link Blocks
  • Block Height and Timestamp
  • LevelDB to Persist Data
  • Practice LevelDB and
  • Promises

Blockchain Web Services

  • What’s a Web Service?
  • Web Service with Blockchain Considerations
  • Planning Web Services with
  • Our Private Blockchain
  • Web Services with Node.js
  • Node.js Intro, Setup, Components
  • Node.js Client and Server Features
  • Practice Client-Server Features
  • Mock Data Set
  • Testing endpoints

Web Services with Node.js

  • RESTful APIs with Node.js Frameworks
  • Express.js
  • Practice Express.js
  • Hapi.js
  • Practice Hapi.js
  • Sails.js
  • Third-Party Libraries with Bitcoin Core
  • Security – Third-Party Libraries and MultiSig

Digital Assets

  • Digital Assets
  • Encode and Decode Basics
  • Encode and Decode from Terminal
  • Encode and Decode with Node.js
  • Proof of Existence
  • Securing Assets Using Your Digital Identity
  • Blockchain Generations
  • Build a Private Blockchain Notary Service

Identity and Smart Contracts

  • Introduction to Ethereum
  • Ethereum Tools and Community
  • Introduction to DApps
  • Ethereum Network Connection
  • Investigate Ethereum Accounts
  • Create a Local Blockchain
  • Connect to Your Local
  • Ethereum Blockchains
  • Ethereum Transactions
  • Gas and Fees

Solidity and Creating a Token

  • Smart Contracts and Solidity Introduction
  • Remix Online Tool
  • Memory Management in Solidity
  • Elementary Data Types in Solidity
  • Type Conversion in Solidity
  • Complex Data Types
  • Arrays, String and Bytes Types
  • Mappings, Enums, Structs
  • Solidity Global Variables and Ether Units
  • Functions in Solidity
  • Error Handling in Solidity
  • Inheritance in Solidity
  • Events in Solidity
  • What are Tokens?
  • ERC Token Standards
  • Creating ERC-20 using Remix
  • Creating ERC-20 using OpenZeppelin

Smart Contracts and Solidity

  • Smart Contracts
  • Solidity Introduction
  • Identity & Smart Contracts
  • Building a Star Notary Service
  • Deploying Smart Contract – Ganache
  • Deploying Smart Contract Review
  • Interact with a Smart
  • Contract from a Webpage
  • Using Events from a Smart Contract

Tooling for Smart Contracts

  • MetaMask Introduction
  • Unit tests in Javascript and Solidity with Truffle
  • Star Notary as ERC-721
  • Transform Star Notary into a Non-Fungible Token
  • Getting Started with Infura

Decentralized Star Notary

  • Write a smart contract
  • Test smart contract code coverage
  • Deploy smart contract on a public test network
  • Modify client code to
  • interact with smart contract