Substrate

Abstract

Substrate is a modular framework that enables you to create purpose-built blockchains by composing custom or pre-built components.

Overview

Substrate takes a modular approach to blockchain development and defines a rich set of primitives that allows developers to make use of powerful, familiar programming idioms.

How to Use

  1. Substrate Node: create a new blockchain with a JSON file.
  2. Substrate FRAME: create a new blockchain with customized login.
  3. Substrate core: build your own blockchain from scratch.

Technical Freedom vs Development Ease

Architecture

Substrate Client Architecture

Key Concepts

In Substrate-based chains, the runtime is referred to as the “state transition function”.

Core Primitives

  1. Hash
  2. DigestItem
  3. Digest
  4. Extrinsic. Data out of chain, that could be recognized by the chain.
  5. Header. Similar to BTC blockchain header.
  6. Block
  7. BlockNumber. Similar to BTC height. 32bit.

FRAME Primitives

  1. Call.
  2. Origin. Where the call came from
  3. Index.
  4. Hashing. The hashing system used, e.g. Blake2
  5. AccountId. User account identifier.
  6. Event
  7. Version
    Runtime Composition