You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It looks like both #7 and #9 reveal an issue that this library isn't properly handling small nodes (len < 32) that get encoded in place. This issue happens both in hash building and proof verification. I'm submitting this issue specifically to target the verification side, as an Optimism block exists that generates a proof which cannot be verified by this library.
Verifying this proof results in failure, with an error saying that 0x64 (the storage slot value) is expected but got None. This is caused by the verification code not digging into in-place encoded nodes when it encounters one. This proof happens to have a branch node that encodes child nodes in-place.
The text was updated successfully, but these errors were encountered:
It looks like both #7 and #9 reveal an issue that this library isn't properly handling small nodes (len < 32) that get encoded in place. This issue happens both in hash building and proof verification. I'm submitting this issue specifically to target the verification side, as an Optimism block exists that generates a proof which cannot be verified by this library.
Run this command against an Optimism RPC:
cast proof 0xeB585163DEbB1E637c6D617de3bEF99347cd75c8 0x28f4302150b722752b95a0c2ec6426520f38afc8ec7bb291f3069bed49a511db --block 123955996
To retrieve this proof:
Verifying this proof results in failure, with an error saying that
0x64
(the storage slot value) is expected but gotNone
. This is caused by the verification code not digging into in-place encoded nodes when it encounters one. This proof happens to have a branch node that encodes child nodes in-place.The text was updated successfully, but these errors were encountered: