Implementing a smart contract runtime on NoM

While adding an EVM to a feeless network might not be a good idea, I’ve come across the following solutions that might be perfect in our case:

This could allow users to do all the processing off-chain and only store on-chain the following components:

  • compiled contract
  • execution proof
  • inputs (parameters)
  • outputs (result)

Why is this better than EVM?
On EVM when a user interacts with a smart contract, all the nodes in the network need to execute the contract and every new node needs to re-execute all the smart contract interactions when it syncs.

Using Cairo + Winterfell, on the other hand, nodes would only need to verify the proof and all the execution is done by the user off-chain, only once.

7 Likes