Closed eigmax closed 4 months ago
In the zkVM, there are 2 steps to go:
i. filling in the pre-state ii. performing the EVM interpreter iii. parsing the execution trace, and getting the post-state.
The example here is employed to run the above steps.
After discussing with @nick199910, @BC-A and @JangoCCC , we reach an agreement that:
Do dynamic execution over block data, which does the same as debug_traceTransaction in Geth. Use storage layout tools, like smlxl/storage-layout-extractor, to calculate the slots without the solidity source code.
debug_traceTransaction
I submitted a proposal for the method 2 at #76. For the method 1, we need to modify zkevm-node, to embed a Golang EVM to produce the pre/post state.
A cross contract invocation sample is here: https://github.com/BC-A/hardhat-example
In the zkVM, there are 2 steps to go:
The example here is employed to run the above steps.
After discussing with @nick199910, @BC-A and @JangoCCC , we reach an agreement that:
I submitted a proposal for the method 2 at #76. For the method 1, we need to modify zkevm-node, to embed a Golang EVM to produce the pre/post state.