Polkadot
ギャビン・ウッドは、ブロックチェーンネットワークの接続を目的としたネットワークであるPolkadotを提案しています。
Polkadotはパラケイン、つまり「グローバルに整合性のある動的データ構造」の基盤を提供します。パラケインとは、このようにPolkadotネットワークに参加する並列化されたチェーンのことです。ブリッジと呼ばれる特殊なパラケインは、独立したチェーンをリンクします。
Polkadotは、暗号通貨やその他の分散型の システムで使用することができます。
WebAssembly、ライトクライアント、オフチェーンワーカーとのクロスランゲージサポートを保証し、他の技術との統合を可能にします。
Polkadotは、チェーンリレーバリデータによる状態遷移の検証に基づいた相互運用性を可能にします。
Parachainsは、Cross-chain Message Passing Protoco(XCMP)を使って通信を行います。
マークルツリーに基づくキューイング通信機構を開発しました。
Parachainsからリレーチェーンへの状態遷移証明の伝達は、消去符号化方式によって実現されます。
第2レベルParachainsは、Parachainsに接続されたパラケインであり、リレーチェーンに順番に接続され
第3レベルのParachainsは、第2レベルのParachainsに接続されています。
これにより、シャーディングと呼ばれるプロセスでParachainsの数をスケーリングすることができます。
ポルカドットネットワークには、取引の処理に従事するいくつかのエンティティがあります。
collator
collatorはvalidatorの証明を作成する。
その後、トランザクションはブロック単位で実行され、集約されます。
collatorは、ブロックを作成することで得られる報酬を調整し、共有するためにプールする可能性があります。
validator
validatorはリレーチェーン上でブロックを生成し、最終的な処理を行う。
validatorの役割は、善良な行動を促すために保留されているステークに依存しています。
不適切な行動をとったvalidatorはブロックの報酬を拒否されたり、再発した場合には保証金を没収されたりすることがあります
validatorは、PoWシステム(例:ビットコイン)での貢献度に比例してブロック報酬を共有する協力的な採掘者のグループに相当します。
nominator
fisherman
fishermanは、無効なブロックの批准に協力するなど、validatorの不作法を報告することで報奨金を得る。
https://gyazo.com/bd38544d730b5bb6b23bdb1523281371
図10は、Polkadotを構成するいくつかのコンポーネントを示している。Polkadotのリレーチェーンは Substrateを使用している。
PolkadotのステートマシンはWASMにコンパイルされており、状態遷移機能を実行できる仮想環境です。
Libp2p は、Rustプログラミング言語で書かれたピアツーピアアプリケーションのためのネットワークライブラリです。
parachainsは アプリケーション・ロジックを使用して、必要に応じてトランザクションを作成します。
collatorはそれらのトランザクションをグループ化してバリデータにリダイレクトし、ブロックを有効か無効かを判断します。その後、有効なものがリレーチェーンに追加されます。
Polkadot は、ノードが正しく行動するためのインセンティブとして DOT トークンを使用します。
DOTには次のような目的があります。
ガバナンスの分散化(プロトコルの更新)
操作(=良い役者に報酬を与えること)
ボンディング(すなわち、ニューパラチェインの追加)
ポルカドットのリレーチェーンは、BABEとGRANPAを用いてコンセンサスを実現している。
BABEはブロック生成アルゴリズムであり、GRANPAは確定アルゴリズムである。
validatorのセットを決定するために、PolkadotはNominated Proof-of-Stake (NPoS)と呼ばれるPoSに基づく選択を使用する。
NPoSと報酬メカニズムを組み合わせることで、short-range attack(validatorがフォークの両方のブランチを批准しようとする場合)やnothing-at-stake attack(敵対者がジェネシスブロックからチェーンを偽造する場合)などの攻撃の影響を軽減することができます。ロードマップはメインネットワークの立ち上げから構成されています。