feat: bytecode hashing init
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:
- Deriving class id, including tracing and hinting the artifact hash, etc
- Deriving the address, including tracing and hinting the contract instance
- Merkle path hinting and verification in the AVM
This stack of pull requests is managed by Graphite. Learn more about stacking.
Join @IlyasRidhuan and the rest of your teammates on
Graphite
Docs Preview
Hey there! 👋 You can check your preview at https://671b8a720a7e7c1195b1b923--aztec-docs-dev.netlify.app
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