Polkadot
and why you want to substrate your blockchain
benjamin kampmann
gnunicorn.org // ben@parity.io
cologne, nov 5th, 2018
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
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,171