polytope-labs / solidity-merkle-trees

The most advanced solidity library for merkle (multi) proof verification of different kinds of merkle trees
Apache License 2.0
183 stars 33 forks source link

Cannot verify merkle proof for Polygon Edge transaction trie #17

Closed sebastiendan closed 1 year ago

sebastiendan commented 1 year ago

Hey,

I'm trying to verify a merkle proof for Polygon Edge transaction trie, which should be equivalent to Ethereum's.

The trie root and the proof seem correct as VerifyEthereumProof throws an Incomplete proof! error for any changes in their value. But whatever the keys I pass, the VerifyEthereumProof function returns [0x0].

I get the proof from @ethereumjs/monorepo trie lib.

Do you see what's going wrong here? I've verified the proof with @ethereumjs/monorepo in js.

Here are test values:

Trie root: 0x8c623b58ccc51ef01a65f35f74c2e44cec7b6a4d65398f6372415aebaec2199b Proof: ["0xf90130822080b9012af901270f80833d09009476394959e430e539b9c30d526c3b70518ca4a3c880b8c4b32c81057d897233f25bf35582fd8ec453a023f2e3e11a9b5a97196ccf06f90e9992c30c0000000000000000000000004aab25b4fad0beaac466050f3a7142a502f4cf0a0000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000035453540000000000000000000000000000000000000000000000000000000000821292a0e034de7191ff7b6ba9c09f119dcd16be545c58f5ec267a56ea102a0e7769e912a015e84b72ecaab2e13590c56d9e37915c9d910a29434c07ed8337de55d57c719c"] Keys: ["0x80"]

seunlanlege commented 1 year ago

Ethereum proofs aren't yet supported

https://github.com/polytope-labs/solidity-merkle-trees/issues/10

sebastiendan commented 1 year ago

Ok, thanks for the update.

sebastiendan commented 1 year ago

@seunlanlege #10 refers to EIP-1186 which is tailored for account and storage proofs, will this impact transaction proofs? (merkle proofs of transaction tries)

sebastiendan commented 1 year ago

@seunlanlege #10 refers to EIP-1186 which is tailored for account and storage proofs, will this impact transaction proofs? (merkle proofs of transaction tries)

seunlanlege commented 1 year ago

@seunlanlege https://github.com/polytope-labs/solidity-merkle-trees/issues/10 refers to EIP-1186 which is tailored for account and storage proofs, will this impact transaction proofs? (merkle proofs of transaction tries)

Yeah it should work for both