本稿について
本稿では、DFINITY White Paper:Consensus Systemのうち第2章「INTRODUCTION」の日本語訳を掲載します。
原文はこちらになります。
スポンサードサーチ
2 はじめに
DFINITYのコンセンサスメカニズムには、図1に示すように4つのレイヤがあります。1番目のレイヤでは、登録が済んでいるシビルアタック耐性のあるククライアントアイデンティティを提供します。2番目のレイヤは非中央集権型のランダムビーコンとなっています。3番目のレイヤはブロックチェーンで、リーダーランキングに関わる確率的メカニズムを通じてランダムビーコンがドライブします。4番目のレイヤは非中央集権型の公証者で、タイムスタンプと保証の公告を提供し、最終的にはほぼ即時のファイナリティをもたらすのに重要な役割を果たします。DFINITYのコンセンサスレイヤとコンセンサスメカニズムに関わるその他重要な側面は、以下の主要カテゴリに纏めることができます。
1番目のレイヤ:アイデンティティと登録
DFINITYネットワークのアクティブな参加者を「クライアント」と呼びます。DFINITYの全てのクライアントは登録されます。つまり、全てのクライアントが不変の擬似アイデンティティを持ちます。クライアントの登録は、典型的なプルーフオブワーク型のブロックチェーンに対してアドバンテージがあります。プルーフオブワーク型のブロックチェーンでは、異なるブロックと同じマイナーをリンクさせることはできません。例えば、登録に保証金が必要だとして、不正行為をしたクライアントは保証金全額を失いますが、一方で典型的なプルーフオブワーク型ブロックチェーンのマイナーの場合は不正行為中でもブロック報酬を諦めるだけで済みます。結果、登録済みアイデンティティに対する不正行為のペナルティは、未登録アイデンティティに対する場合と比べてずっと大きくなります。これは非常に重要です。なぜなら、ブロックチェーンでは制限なく外部の価値を追跡してネーティブトークンそのものの価値を向上させることができるからです。さらに、DFINITYは、ロックアップ期間を設けた保証金の預け入れを通じて新しいクライアントを登録できるプロトコルを提供することで、オープンメンバシップ(筆者注:性別、社会、人種、政治的あるいは宗教的な差別なく誰もがDFINITYのクライアントになれる、ということ。)をサポートします。これが1番目のレイヤの責務です。
2番目のレイヤ:ランダムビーコン
2番目のレイヤのランダムビーコンはバイアスのかかりえないVRFで、登録済みのクライアントが連帯して生成します。VRFのランダムな出力は全て、全員が利用できる状態になるまで誰にも予測ができません。これはDFINITYシステムの非常に重要なテクノロジで、唯一性(ユニーク性)とノンインタラクティブな性質を持つ閾値リレー署名スキームに基づいています。BLS署名スキームはこれらの機能を提供できる唯一の実用的な1スキームであり、DFINITYには特別に最適化されたBLSビルドインが実装されています[2, 11]。ランダム性を作り出すのに閾値メカニズムを使うことで、根本的な「最後の行動者(last actor)」問題が解決します。パブリックなランダム性を生成するのに閾値メカニズム以外の非中央集権型プロトコルを使うと、どのプロトコルを使っても「最後の行動者」問題に頭を悩ますことになります。「最後の行動者」問題とは、プロトコルの最後の行動者が次の乱数を知ってプロトコルを中断させることができてしまうというものです。
(脚注1)
RSAベースの代替となる方法はありますが、信頼できるディーラー抜きで閾値の鍵をセットアップできないという問題に悩まされます。
3番目のレイヤ:ブロックチェーンとチェーン分岐の解決法
3番目のレイヤでは「PSP(確率的スロットプロトコル)」をデプロイします。このプロトコルはチェーンの高さごとにクライアントをランク付けします。順番はその高さに適用する公正なランダムビーコンのアウトプットによって決定論的に定まります。そして、ブロック提案者のランクに基づいてブロック提案にウェイトが付与されます(重み付けがされます)。従って、クライアント一覧のうち上位にいるクライアントから提案されたブロックほどより重いウェイトが付与されることになります。チェーンの分岐は累積ブロックウェイトの観点から「最も重い」チェーンを支持することで解決します。これは、最大の累積仕事量を基にする従来のプルーフオブワーク型のコンセンサス形成方法にとてもよく似ています。PSPプロトコルの第一のアドバンテージはランキングをすぐに利用できることで、これにより予測可能で一定のブロックタイムが実現します。第二のアドバンテージは最高ランクのクライアントが常に一つあるということで、これにより均質なネットワーク帯域幅の利用ができます。代わりに、クライアント間の競争では短期的な使途についての賛同が行われます。
4番目のレイヤ:公証とほぼ即時のファイナリティ
トランザクションのファイナリティとは、与えられたトランザクションが不可逆的に実行されたことについてシステム全体のコンセンサスが形成されることを意味します。分散型システムの大半が高速なトランザクションのファイナリティを求めている一方で、既存のブロックチェーンではそれを提供することができません。DFINITYではブロック公証という最新の手法を4番目のレイヤにデプロイしてファイナリティを速めます。公証とは、登録クライアントが連帯して生成するブロックの下で行われる閾値署名です。公証を得たブロックだけがチェーンに取り込まれます。ランダムビーコンが導く公に検証可能なランキングアルゴリズムと関連して、公証を求めて提出される全てのブロック候補のうち最も高いランクのついたブロックにのみクライアントは公証を与えます。重要なことなので強調しておきますが、公証はコンセンサスではありません。というのも、攻撃タイミングによっては同一の高さで1つ以上のブロックを公証できてしまうからです。これは明らかに耐性が高く、ブロックごとに完全なビザンチン合意を提供するほかのプルーフオブステーク型の提案との重要な違いでもあります。DFINITYは高速さとブロックタイムの短さをまさに公証が完全なコンセンサスでないことによって達成しています。しかし、1ブロックだけが公証を与えらえるケースが多いことから公証を楽観的なコンセンサスと捉えることもできます。このケースに該当するかは、後続の1ブロックにリレータイムを足せば検出できます(定理9.3を参照)。従ってブロードキャストネットワークが正常に機能していれば、DFINITYコンセンサスでは公証済みのコンファメーション2つ+ネットワークのトラバーサルタイムを経ればトランザクションがファイナライズされます。
DFINITYは正当性の保証を主とするものではなく、タイムスタンプ+公告による証明(Proof of publication, プルーフオブパブリケーション)であるということは強調しておきたいと思います。公証のステップで、一連の公証済みブロックを秘密裏に作ったり隠したままにしておくことができなくなります。これにより、DFINITYはセルフィッシュマイニング[4]やNothing-at-Stake問題に苦しまずに済むのです。
閾値リレーとネットワークスケーラビリティ
DFINITYのコンセンサスは数百万のクライアントがいるネットワーク上で動くように設計されています。これほどのスケーラビリティを成しうるために、ランダムビーコンと公証プロトコルはどちらも安全かつ効率的にコミティに受け渡すことができるように設計されています。「コミティ」は全登録クライアントから無作為抽出された一団です。コミティは閾値メカニズムをデプロイする(安全性のため)だけでなく、ノンインタラクティブになります(効率性のため)。
DFINITYでは、アクティブなコミティは規則的に変更されます。全クライアントの代表として一時的にプロトコルを実行したあと、そのコミティは事前に設定された別のコミティに実行を引き継ぎます。この手法をDFINITYでは「閾値リレー」と呼びます。
一貫性vs可用性
DFINITYがネットワークの分裂を暗黙のうちに検出でき、コンサバティブに対処できるというのはとても注目に値することです。これはコミティの無作為抽出の結果です。ネットワークが概ね同じ大きさを持つ2つのネットワークに分裂すると、自動的にランダムビーコンが出てきて数ブロックのあいだ一時中断させるのでどちらのネットワークも継続できなくなります。ランダムビーコンはネットワークをもう一度結合させようとします。もし分裂したネットワークの一つが元のネットワークの半分よりも明らかに大きい場合、プロトコルはその大きいネットワークを継続する一方でその他全ての分裂したネットワークを中断させます。
ネットワーク分裂は通信が阻害された場合にのみ起こるわけではありません。他の重要な、そしてより現実的なケースは、複数のDFINITYクライアントが実装されている場合にバグの発生によって合意が得られないというものです。DFINITYはこの問題にも上手に対処します。平等に広く利用されている2つのクライアントがあって食い違いが起こり始めると、どちらのクライアントも一時停止します。平等に利用されているたくさんのクライアントがあって1クライアントがそれ以外との食い違いを起こし始めた場合は、その1クライアントだけを一時停止してネットワークは恐らく継続します。これは確実に所与のシナリオにおける望ましいふるまいです。他のブロックチェーンではこういったケースにうまく対処できず、こういった事態の発生は現実的な脅威をもたらします。というのも、これらのブロックチェーンは一貫性よりも可用性に重きを置きすぎているからなのです。
本資料の章構成
第3章ではプロトコルの全体像について述べます。第4章ではDFINITYシステムとコミュニケーション、脅威モデルについて具体化し、関連のある表記法を紹介します。第5章から第7章ではPSP(確率的スロットプロトコル)とランダムビーコンプロトコルについて詳述します。第8章の1ではあらゆる複製よりも事前に設定されたコミティが安全にプロトコルを実行できるようにする閾値リレーの手法を紹介します。第8章の2ではメンバがいつでもプロトコルに出たり入ったりできるオープン参加モデルについて述べます。最後となる第9章ではDFINITYプロトコルに関するセキュリティと正当性の証拠を示します。
(DFINITYホワイトペーパー日本語訳1 ←← 前)|(次 →→ DFINITYホワイトペーパー日本語訳3)
免責
邦訳には誤りがある場合がございます。予めご承知おき下さい。
確実な情報を知るためには冒頭に示した原文をご参照くださいますようお願いいたします。