Skip to content
This repository was archived by the owner on Jul 5, 2024. It is now read-only.
This repository was archived by the owner on Jul 5, 2024. It is now read-only.

Meta: Minimal Tx with ether + Minimal ERC20 interaction - Milestone-1 #277

Closed
@CPerezz

Description

@CPerezz

Goal

The final goal of the Milestone-1 is to have a ZKEVM PoC that is able to:

  • Send a minimal transaction with ETH
  • Be able to interact with a minimal ERC20 contract.

Relaxation

The following features are postponed to further milestones:

There are also some pieces required for this PoC which are being currently implemented and will probably be mocked at the beginning until we can fully integrate them. They are marked with (*) in the list of tasks. For example:

  • Keccak circuit + Padding + state incrementally update implementation
  • MPT circuit + single-key update implementation
  • ECDSA circuit
  • Aggregator circuit

TO DO list:

First iteration

Milestone 0 will be the first iteration where we apply the relaxations mentioned above by mocking some modules.

Overview

  • evm circuit
    • state circuit
      • mock mpt circuit
    • tx circuit
      • hashes not proved
      • mock signature circuit

Instead of aggregating all the circuits above with an aggregation circuit to generate a single proof, we consider the proof to be the list of circuit proofs, and its verification the verification of each proof individually.

Since we won't yet have smart contracts in L2, we skip the deposit/withdrawal functionality that moves ETH from L1 to L2. We can set some accounts with positive balance in the L2 genesis to test the transfers.

The L1 contract will receive the list of proofs for a block, prepare all the public inputs (and build necessary tables) and verify each proof. It will also calculate the hash for each tx to pass as public inputs.

Metadata

Metadata

Assignees

No one assigned

    Labels

    T-spec_neededType: needs to be speced out https://github.com/appliedzkp/zkevm-specscrate-bus-mappingIssues related to the bus-mapping workspace membercrate-zkevm-circuitsIssues related to the zkevm-circuits workspace member

    Type

    No type

    Projects

    Status

    ✅ Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions