RollupとZK-Rollup、ZK-SNARKについて

前回はPlasmaについて書いたが、Plasmaの課題を解決するためのオフチェーン技術であるRollupとその派生であるZK-Rollup、Optimistic rollupについて説明する。 その中で説明に必要な概念であるZK-SNARKについても紹介する。 これに限らず、Ethereumは多数のプロジェクトが並行で動いている状態であり、メインネットワークも活発に更新されているほか、Ethereumを基盤とするエコシステムも多様なものが乱立している。

Plasmaの課題

以前にも書いた通り、Plasmaは高速な取引を可能にする一方で、スマートコントラクトを実現することはできず、用途が限られてしまう課題がある。

Rollup

Rollupは、トランザクションの「実行」はメインネットワーク=L1の外で行うが、トランザクション結果のデータはL1に書き込む解決策で、 その形式からL1.5と呼ばれることもある。 L1にはトランザクションの結果のデータ、またはトランザクションを実行した証明だけがデータとして残り、 L1のスマートコントラクトを実行することで、L2のトランザクションが正しく実行されるように設計する必要がある。 Rollupにはセキュリティによって異なる、二種類の分類がある。

Optimistic rollup:トランザクションが正しいという前提で処理を行う、楽観的(optimistic)なRollupレイヤー

先に実装されたのはこちらのRollupで、さらに発展させたArbitrum OneやArbitrum Nitroが実際に運用されている。

ZK-Rollup: ZKとは、ゼロ知識(Zero Knowledge)の略称で、トランザクション内にZK-SNARKを用いた検証が含まれる。

  • 補足:ZK-SNARK(Zero-Knowledge Succinct Non-Interactive Argument of Knowledge)とは、知識なしに、また検証者と証明者が直接情報のやり取りをすることなく秘密鍵などの情報の保持を証明することができる枠組み

参照: Layer 2 Rollups | ethereum.org

所感

Rollupは、BitcoinでいうLightning networkと似ているが、スマートコントラクトにより自身とL1の接続が問題なく行われるという理解をした。