aztec-packages icon indicating copy to clipboard operation
aztec-packages copied to clipboard

feat: bytecode hashing init

Open IlyasRidhuan opened this issue 1 year ago • 3 comments

This adds proper computation of the public bytecode commitment (i.e. pair-wise poseidon hashing of the public bytecode). This hash is also computed in the witgen although the circuit remains unconstrained.

Follow up PRs will handle:

  1. Deriving class id, including tracing and hinting the artifact hash, etc
  2. Deriving the address, including tracing and hinting the contract instance
  3. Merkle path hinting and verification in the AVM

IlyasRidhuan avatar Sep 13 '24 14:09 IlyasRidhuan

  • #9205 Graphite
  • #9436 Graphite
  • #8897 Graphite
  • #8840 Graphite
  • #8535 Graphite 👈
  • #8884 Graphite
  • master

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @IlyasRidhuan and the rest of your teammates on Graphite Graphite

IlyasRidhuan avatar Sep 13 '24 14:09 IlyasRidhuan

Docs Preview

Hey there! 👋 You can check your preview at https://671b8a720a7e7c1195b1b923--aztec-docs-dev.netlify.app

AztecBot avatar Sep 24 '24 23:09 AztecBot

LGTM! Excellent work. Some comments, but let's get this merged.

Are there tests that specifically test that bytecode hashing is working as intended?

Yep, in the other PRs we will enforce that the bytecode hashing we perform matches the hints received by the hints. So effectively avm_proving_test will also be the test for bytecode hashing + address derivation

IlyasRidhuan avatar Oct 25 '24 13:10 IlyasRidhuan