Open DreamWuGit opened 2 years ago
I think Root is still important for deposits and things like that. Also some smart contract use the current or previous roots to look things up. Same with tX_hash
Totally agree on the rest would also include Difficulty.
For these we can probably set them to a dummy constants for zkrollup use case.
Yes, I say stateRoot
for Root
, transactionsRoot
for TxHash
:), moreover ,I see the ReceiptHash
also count for tx logs which evm operates to write.
I would say that we should treat the irrelevant block feilds like post merge eht does
https://github.com/appliedzkp/zkevm-specs/issues/98
That way its easier for devs to deploy their apps without worrying about these irreverent fields.
there are some block fields as following(mark with prefix *) which are evm irrelevant, in other words, evm do not use or access them directly, and they ought to be not include in evm circuit, however, does the Layer1 contract will need them eventually for sanity checking ?
from my current perspective, for the
stateRoot
,transactionsRoot
,receiptsRoot
seems make sense to layer1, but others likeBloom
,nonce
are trivial to layer1 . Just some thinking as to this aspect, not urgent for current stage, we can review it in the future.