Closed AlexHentschel closed 3 weeks ago
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
superseded by Clover - Verifiable Events with Multiple Indices design
For each computed chunk, an Execution Node includes a hash of all events in its Execution Result.
However, at the moment, we simply hash the list of all events in its entirety. This makes it very expensive to prove that a specific event was emitted during a block's computation, because the prover needs to transmit all events from the specific chunks to the recipient, as there are generally lots of events emitted within a chunk.
Formally, lets denote the set of all events emitted during chunk
i
asS_i
. We want to prove that a certain evens
was emitted in chunki
, i.e.s ∈ S_i
. At the moment, such a proof requires a lot of data to be sent over the network, as we need to submitS_i
in its entirety.Goal
Reducing the proof size for
s ∈ S_i
:s ∈ S_i
, the client would needSeal
to Execution ResultE
(might require some auxiliary data to be provided by the prover):E
Chunks
and not including them verbatim in the Execution Result.s
is part of theEventCollection
. At the moment, theEventCollection
is the hash of a flat list, i.e. the proof is very space-inefficient.Out of scope: