Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

eth_getProof fails with latest Jerigon #448

Closed
atanmarko opened this issue Jul 26, 2024 · 2 comments
Closed

eth_getProof fails with latest Jerigon #448

atanmarko opened this issue Jul 26, 2024 · 2 comments
Assignees
Labels
bug Something isn't working crate: zero_bin Anything related to the zero-bin subcrates.
Milestone

Comments

@atanmarko
Copy link
Contributor

atanmarko commented Jul 26, 2024

There are changes in the latest Jerigon feat-zero but it does not seem to be related.

EDIT: Regression happens on zk_evm side with the PR 3336055. Does not seem to be related to Jerigon changes.

@atanmarko atanmarko self-assigned this Jul 26, 2024
@atanmarko atanmarko added bug Something isn't working crate: zero_bin Anything related to the zero-bin subcrates. labels Jul 26, 2024
@atanmarko atanmarko added this to the Misc. milestone Jul 26, 2024
@atanmarko
Copy link
Contributor Author

The problem seems to be on the Jerigon side. It manifests on the cancun branch, because it asks for some additional account states for the same block.

Here is what Jerigon returns:

{
  "address": "0x000f3df6d732807ef1319fb7b8bb8522d0beac02",
  "accountProof": [
    "0xf90211a097e4ae58e8d997dd2b19ed09ad9a66d1c0fd304d074e4a7bfb3f1fcc512a3e63a006d47616df479b46b302f2a8b7ed03cb537f6cf7c551c15421c65db4e00fa97fa038e34f9e0e4830343ba24f5fcf0eba28d79cb86397adfb16a0169ee7f0180036a0f49e5f979766af3b360ae24cd45221c085d47164aaeceeb94b574510c9e8d7eea0b20de96d0e24978b7aed7e55836eb2d8bee7e59ac1f461181391940f87517970a0eea64374052ac460957bbc34a071cb8b25dcdf44d96785a55b34242914c83f9fa0cf7159e09fc6bf2cfdc89b2e534fb8ac079137d9f5f55b823f8d574cc1c7f0caa083c6979e463c02818ffeadaeeb8abc9f2f51e767fb9151a7fc89989eb40b57aca0cbcdc1d226a540c50cb1e615e7af99f171d4365b45734940e22d47ec4aa23a14a0be88e4724326382a8b56e2328eeef0ad51f18d5bae0e84296afe14c4028c4af9a018e0f191e57d4186717e0f3c9379d2438cec0babd12d3903a4ad560f017331bfa01796617427e67ed10cdf8a72b02689a700ba71eb93186a1b120c9ad0b0e56eaea0ad0bb86b47186c04223e85a9c33dd1c87dd6e5c17f753f4fd0a56772d8a78399a057436f5ea99638a18de5c46ed0dc6ce54a80e29e4a9473f84f74f2032eb03ed0a06a2b50671c3f299bfd4b6cf43d6e5d6aafd4d3677c38a8af52a0cd7680de2b94a037ff00fbe2105bce0e6ed9ea80a1d67b8a476b1ff3d177ac9597a53241e47aa780",
    "0xf901d1a027db720cbe694541a361e08b5450894ddce39b11113fe952080ad5f54ada6f4a80a0d2e57f615a47508c6e60935353428b9fc1cc75677a3eb8f5f73d61dd0aaff5f5a0ca976997ddaf06f18992f6207e4f6a05979d07acead96568058789017cc6d06ba04d78166b48044fdc28ed22d2fd39c8df6f8aaa04cb71d3a17286856f6893ff83a08da23f96f2366f269fbfa386fa2308286ce8afe8577fafcc98f663868f214c43a0fc3b71c33e2e6b77c5e494c1db7fdbb447473f003daf378c7a63ba9bf3f0049da0e33ed2be194a3d93d343e85642447c93a9d0cfc47a016c2c23d14c083be32a7ca07b8e7a21c1178d28074f157b50fca85ee25c12568ff8e9706dcbcdacb77bf854a0973274526811393ea0bf4811ca9077531db00d06b86237a2ecd683f55ba4bcb0a091d9c76bfbc066e84f0b415c737ab8c477498701d920526db41690050cfade99a06aa67101d011d1c22fe739ef83b04b5214a3e2f8e1a2625d8bfdb116b447e86fa0244e4282dfec33c9bb765162ceee4f2e6390033a94b620d50a2fc6943ebd82fca0f3b039a4f32349e85c782d1164c1890e5bf16badc9ee4cf827db6afd2229dde6a0d9240a9d2d5851d05a97ff3305334dfdb0101e1e321fc279d2bb3cad6afa8fc88080",
    "0xf869a020d65eaa92c6bc4c13a5ec45527f0c18ea8932588728769ec7aecfe6d9f32e42b846f8440180a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421a0f57acd40259872606d76197ef052f3d35588dadf919ee1f0e3cb9b62d3f4b02c"
  ],
  "balance": "0x0",
  "codeHash": "0xf57acd40259872606d76197ef052f3d35588dadf919ee1f0e3cb9b62d3f4b02c",
  "nonce": "0x1",
  "storageHash": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
  "storageProof": [
    {
      "key": "0x0000000000000000000000000000000000000000000000000000000000002482",
      "value": "0x0",
      "proof": null
    },
    {
      "key": "0x0000000000000000000000000000000000000000000000000000000000000483",
      "value": "0x0",
      "proof": null
    }
  ]
}

Alloy expects the storage proof EIP1186StorageProof.proof content to be sequence and not null so it fails to deserialize (err: Error("invalid type: null, expected a sequence", line: 1, column: 2613))

pub struct EIP1186StorageProof {
    /// Storage key.
    pub key: JsonStorageKey,
    /// Value that the key holds
    pub value: U256,
    /// proof for the pair
    pub proof: Vec<Bytes>,
}

@atanmarko
Copy link
Contributor Author

Opened related issue on Erigon 0xPolygonZero/erigon#14

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working crate: zero_bin Anything related to the zero-bin subcrates.
Projects
Status: Done
Development

No branches or pull requests

1 participant