Zk-Rollup
特定のユースケースでは利用できるが、一般化するのは難しい
>2014年のブログ投稿では 、「ブロックデータはチェーン上で公開されるが、ブロックはデフォルトでは検証されないアーキテクチャ」である “シャドウチェーン” という概念を紹介しました。
>このアーキテクチャでは、ブロックは暫定的に受け入れられ、一定期間(2週間など)の後にのみファイナライズされます。この2週間の間に、暫定的に受け入れられたブロックに対して “チャレンジ”(異議を唱えること) ができます。その場合にのみブロックが検証され、ブロックが無効であることが判明した場合、そのブロックからのチェーンは元に戻され、元の発行者のデポジットは没収などのペナルティを受けます。
それにしても2014年って未来見えすぎでは?
ここでいう
SNARKはそれの証明みたいなものな気がする

>チェーン上で公開されているZKロールアップパッケージの構造。 ZK Rollupシステムのステート(つまり、アカウント残高)に影響する何百もの「内部トランザクション」は、ステート遷移を指定する内部トランザクションごとに〜10バイトを含むパッケージ、さらに「遷移がすべて有効」と証明するSNARKの〜100-300バイトを含むパッケージに圧縮されます
>データ保存は計算よりもコストが低く、特にトランザクション内のデータの大部分は「署名」であり、多くの署名はさまざまな形式の集計で1つに圧縮できるため、トランザクションデータを非常に小さく圧縮できる方法があります。
計算の代わりに
ゼロ知識証明による署名によって、有効性を検証する
>ZK Rollupでは、各トランザクションをわずか10バイトに圧縮することにより、レイヤー1のEthereumチェーンの性能の30倍である500トランザクション/秒を発揮します。署名は、ゼロ知識証明によって有効性が検証されるため、含める必要はありません。
1. メインチェーンに書き込まれたオフチェーントランザクションバンドルを使用する
>ひとつ目のアプローチでは、オフチェーンで実施された複数のトランザクションの証明を、検証可能な形でオンチェーンに書き込むことで、データサイズを圧縮しています。
> このアプローチに基づく事例として挙げられるのが、ゼロ知識証明の一種である「zk-SNARK」を用いてブロックの有効性を検証する「Zk-Rollup」というアイデアです。