Open 4000D opened 4 years ago
I think we have to consider stateRoot
as intermediateRoot
between transactions, not stateRoot
in block. Assuming transactions in one block that change a specific account's state several times, if we have only stateRoot
in block, how do we verify account's state?
Yes the correct word is intermediateRoot
, not stateRoot
Account state, as a array with 4 elements
[nonce, balance, storageRoot, codeHash]
, should be verified in contract, along with block'sstateRoot
to guarantee state inclusion.