celestiaorg / ethermint

Ethermint is a scalable and interoperable Ethereum library, built on Proof-of-Stake with fast-finality using the Cosmos SDK.
https://evmos.dev/
GNU Lesser General Public License v3.0
10 stars 15 forks source link

Investigate verifying fraud proofs on a per module keeper level #67

Open jbowen93 opened 2 years ago

jbowen93 commented 2 years ago

From Bo

@jskybowen was wondering if it was necessary to have the fraud proof verifier be a full ethermint app. The app plumbing seems unnecessary for proof verification (might be missing something here)?

Seems like we could:

  • Use the x/evm keeper directly
  • Create a custom KVStore impl that can be instantiated using []StateWitness
  • Instantiate an x/evm keeper w/ state witness KVStore
  • Iterate over []MsgEthereumTx directly and exec within keeper.EthereumTx(msg)
  • Perform same pre/post ISR checks