Polkadot

and why you want to substrate your blockchain

benjamin kampmann

gnunicorn.org // ben@parity.io

buenos aires, apr 4th, 2019

@ Experimental

Next-generation
Crypto-tech
Infrastructure

Kovan

Kovan is a Proof of Authority (PoA) publicly accessible blockchain for Ethereum; created and maintained by a consortium of Ethereum developers, to aide the Ethereum developer community.

Consistent

4-second

blocktimes

Parity Bridge

is an ERC20 token contract on one ethereum-based blockchain that is backed by ether on another ethereum-based blockchain - a side-chain.

connect your DApp sidechain with other chains

main net

alices

side ⛓

bobs

side ⛓

charleys

side ⛓

dianas

side ⛓

n * n

Oh noes, DOES NOT SCALE :( !

Polkadot is ...

... a heterogeneous multi‑chain technology.

... a protocol that allows independent blockchains to exchange information.

... an interoperability layer, that enforces order and the validity of the messages between the chains

but how?

Relay Chain, a blockchain which relays messages of other chains, at the core of network.

Parachains are separate chains run in and with direct knowledge of polkadot.

& bridges allow interactions with 3rd Party chains.

relay chain

alices

para ⛓

bobs

para ⛓

charleys

para ⛓

dianas

para ⛓

1 - n

YAY!

INTEROPERABILITY!

Composable

Substrate ...

... is a Polkadot compatible, general purpose blockchain development SDK

... grew out of Polkadot development framework

... is written in type-safe rust and WebAssembly ("WASM")

How general is substrate?

  • Abstract block format
  • Crypto Database(s) agnostict

 

  • Pluggable Consensus Engine

 

 

  • Extensible networking, CLI, RPC
  • Wasm "execute_block" function

Rhododendron (PBFT, instant finality); Aurand (probabilistic finality, constant blocktime); GRANDPA (progressive, adaptive finality); Ouroboros (live, probabilistic finality) (planned); PoW (e.g., Ethash) (planned); Parachain (PoV, Polkadot consensus) (planned) or roll your own

 

Base-16 modified Merkle trie (aka Etherium); Binary Merkle trie (a la Shasper) (planned); Dynamic create, modify, delete so you can roll your own

WebAssembly ...

"wasm"

.. is a web standard for an assembly like compile-target to run code in Web Browsers as almost native speed

.. is execute in a sandboxed virtual environment

.. can be compiled to from many system languages (C, C++, rust, ...)

Sandboxed Chain

Substrate

Wasm Chain

execute_block

Chain upgrade

Substrate

Chain Runtime

execute_block
set_state(":code",    )

+1

forkless upgrade

What do I get with Substrate

  • Interchain connectivity via Polkadot

  • Hot-upgradeable chain Runtime

  • Hot-swappable, pluggable consensus

  • Light client

  • Chain synchronisation

  • Pub/Sub WebSocket JSON-RPC

  • Transaction queue

  • secure networking

  • JS implementation

  • Telemetry

  • optional SRML Modules for your chain

Substrate Runtime Module Library (SRML)

Modular & pluggable: choose the features you want, snap together, you’re done!

Varying degree of sovereignity

Pluralistic by design

Polkadot is an interoperability protocol with multi-chain collaboration at the core of its design

Polkadot Architecture

excerpt

Roadmap

thanks!

Questions?

benjamin kampmann

gnunicorn.org

tw/gnunicornBen

t.me/gnunicorn

ben@parity.io

We're hiring!

@me

Polkadot and why you want to substrate your blockchain!

By Benjamin Kampmann

Polkadot and why you want to substrate your blockchain!

  • 2,791