原文

EIP-8272: フレームトランザクションの最近のルート · Pull Request #11726 · ethereum/EIPs · GitHubに関する議論トピック。

概要

EIP(Ethereum 改善提案)-8141のフレームトランザクションは、検証中に可変ストレージを読み取ることなく、最近のルートを参照できる。ルートソースは、ルートをシステムコントラクトに書き込む。各ルートは (source_id, slot) でキー付けされ、source_id は書き込み元アドレスとソルトから派生する。フレームトランザクションは、以下の形式で最近のルート参照を宣言できる。

(source_id, slot, root)

フレーム実行前に、クライアントは各参照をトランザクションのプリステートに対してチェックする。チェックは、指定されたルートが指定されたソースとスロットに保存されており、かつそのスロットがまだ最近のものである場合にのみ成功する。検証コードは、トランザクションのイントロスペクションを通じて、検証済みの参照を読み取ることができる。

動機

EIP(Ethereum 改善提案)-8141の検証は、パブリックなメモリプールにおいて、他のアカウントやアプリケーションによって制御される任意のストレージを読み取るべきではない。一部の検証ルールは、プライバシーツリーのルート、ウォレットの認証ルート、アカウント検証ルートなど、最近のアプリケーション状態に依存する必要がある。

最近のルート参照により、トランザクションは署名されたトランザクションエンベロープ内で最近のルートを明示的に指定できる。各参照は1つのシステムコントラクトストレージキーにマッピングされ、検証コードが実行される前にチェックできる。

例えば、プライバシーアプリケーションはコミットメントのツリーを保持し、最近のツリールートに対して使用を証明する。このEIPにより、アプリケーションはスロットごとにルートを書き込み、使用トランザクションは検証中にアプリケーションの変更されるツリー状態を読み取るのではなく、それらのルートの1つを直接参照する。

1投稿 - 1参加者

トピック全文を読む