Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(stdlib): Add keccak #1249

Merged
merged 10 commits into from
May 9, 2023
Merged

feat(stdlib): Add keccak #1249

merged 10 commits into from
May 9, 2023

Conversation

guipublic
Copy link
Contributor

@guipublic guipublic commented Apr 28, 2023

Related issue(s)

Resolves #1189

Description

Summary of changes

Adds Keccak in stdlib and handle Keccak intrinsic function.

Dependency additions / changes

Needs a bunch of PR to be merge and versions to be updated before this can be tested:
noir-lang/acvm#247
noir-lang/acvm-backend-barretenberg#150
AztecProtocol/barretenberg#393

Test additions / changes

I will add an integration test once the above PR are published.

Checklist

  • I have tested the changes locally.
  • I have formatted the changes with Prettier and/or cargo fmt with default settings.
  • I have linked this PR to the issue(s) that it resolves.
  • I have reviewed the changes on GitHub, line by line.
  • I have ensured all changes are covered in the description.

Documentation needs

  • This PR requires documentation updates when merged.

New Keccak function in the stdlib.

BEGIN_COMMIT_OVERRIDE
feat(stdlib): add keccak256 foreign function (#1249)
END_COMMIT_OVERRIDE

@TomAFrench
Copy link
Member

This can be tested by updating the Cargo.toml file on noir-lang/acvm-backend-barretenberg#150 to point to the head commit of noir-lang/acvm#247 and then updating this PR to use the updated backend commit.

As an example of this see https://github.com/noir-lang/noir/pull/1226/files/d79b7f3a737940a9528753a05e1ed4d530397064

@kevaundray kevaundray changed the title Add keccak in stdlib feat: Add keccak in stdlib Apr 28, 2023
@kevaundray kevaundray marked this pull request as ready for review May 5, 2023 10:56
@kevaundray kevaundray requested a review from TomAFrench May 5, 2023 10:57
@kevaundray
Copy link
Contributor

Waiting for noir-lang/acvm-backend-barretenberg#164 to merge so we can avoid the memory leak

flake.lock Outdated Show resolved Hide resolved
@phated phated changed the title feat: Add keccak in stdlib feat(stdlib): Add keccak May 8, 2023
@kevaundray kevaundray enabled auto-merge May 9, 2023 00:02
@kevaundray kevaundray added this pull request to the merge queue May 9, 2023
Merged via the queue into master with commit 260d87d May 9, 2023
@kevaundray kevaundray deleted the gd/keccak branch May 9, 2023 01:01
@critesjosh critesjosh mentioned this pull request May 9, 2023
1 task
TomAFrench added a commit that referenced this pull request May 17, 2023
* master: (66 commits)
  feat(nargo)!: retire print-acir in favour of flag (#1328)
  chore(ssa): enable cse for assert (#1350)
  chore(ssa refactor): Add basic instruction simplification (#1329)
  chore(noir): Release 0.6.0 (#1279)
  feat: enable to_radix for any field element (#1343)
  chore(ssa refactor): Simplify inlining pass and fix inlining failure (#1337)
  chore!: Update to acvm 0.11.0 (#1322)
  feat: Add ECDSA secp256k1 builtin test (#1294)
  chore: add support for encoding/decoding inputs from JSON (#1325)
  feat: Issue an error when attempting to use a `return` expression (#1330)
  chore(ssa refactor): Fix inlining bug (#1335)
  fix: to-bits and to-radix for > 128 bits (#1312)
  chore(parser): Parser error optimisation (#1292)
  chore(ssa refactor): Implement function inlining (#1293)
  chore: fix installation link in readme (#1326)
  chore: fix installation link in readme (#1326)
  feat(stdlib): Add keccak (#1249)
  fix: Parsing nested generics (#1319)
  chore(ssa refactor): Document some SSA-gen functions (#1321)
  fix: Assigning to tuple fields (#1318)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Create Foreign Keccak256 Function
5 participants