Zk-Rollup
public.icon
特定のユースケースでは利用できるが、一般化するのは難しい
2014年のブログ投稿では 、「ブロックデータはチェーン上で公開されるが、ブロックはデフォルトでは検証されないアーキテクチャ」である “シャドウチェーン” という概念を紹介しました。 このアーキテクチャでは、ブロックは暫定的に受け入れられ、一定期間(2週間など)の後にのみファイナライズされます。この2週間の間に、暫定的に受け入れられたブロックに対して “チャレンジ”(異議を唱えること) ができます。その場合にのみブロックが検証され、ブロックが無効であることが判明した場合、そのブロックからのチェーンは元に戻され、元の発行者のデポジットは没収などのペナルティを受けます。 それにしても2014年って未来見えすぎでは?
https://gyazo.com/2e2abbd55f99454dd966aa4d95fd29ed
ここでいうSNARKはそれの証明みたいなものな気がするtkgshn.icon チェーン上で公開されているZKロールアップパッケージの構造。 ZK Rollupシステムのステート(つまり、アカウント残高)に影響する何百もの「内部トランザクション」は、ステート遷移を指定する内部トランザクションごとに〜10バイトを含むパッケージ、さらに「遷移がすべて有効」と証明するSNARKの〜100-300バイトを含むパッケージに圧縮されます
データ保存は計算よりもコストが低く、特にトランザクション内のデータの大部分は「署名」であり、多くの署名はさまざまな形式の集計で1つに圧縮できるため、トランザクションデータを非常に小さく圧縮できる方法があります。
計算の代わりにゼロ知識証明による署名によって、有効性を検証する ZK Rollupでは、各トランザクションをわずか10バイトに圧縮することにより、レイヤー1のEthereumチェーンの性能の30倍である500トランザクション/秒を発揮します。署名は、ゼロ知識証明によって有効性が検証されるため、含める必要はありません。
1. メインチェーンに書き込まれたオフチェーントランザクションバンドルを使用する
ひとつ目のアプローチでは、オフチェーンで実施された複数のトランザクションの証明を、検証可能な形でオンチェーンに書き込むことで、データサイズを圧縮しています。