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

bounty: determine/fix underconstrained variables in two templates #79

Open
3 tasks
brunny-eth opened this issue Sep 10, 2024 · 5 comments
Open
3 tasks
Labels
bounty these are good issues for contributors and are eligible for cash bounties

Comments

@brunny-eth
Copy link
Contributor

brunny-eth commented Sep 10, 2024

Bounty description

Address, explain, and, if necessary, fix underconstrained variables in the parser-attestor repo's circuits, specifically in the Contains operator, IsEqualArray, and the state sum variable.

Implementation requirements
For each of the following, you must provide an example of malicious proof is before making any changes in the code!

  • underconstrained: accum in Contains operator #34
    • As necessary, implement a rolling constraint on every loop iteration to ensure the sum is being accumulated correctly
  • underconstrained: accum in IsEqualArray #35
    • As necessary, implement a rolling constraint on every loop iteration to ensure the sum is being accumulated correctly
  • General requirements for completion:
    • Update existing tests to cover new constraints
    • Ensure that circuits still compile and generate valid proofs after adding new constraints

Resources

Circom Documentation
Comments on underconstrained variables

Criteria

Bounties will be rewarded based on the following criteria:

  1. Correctness and security: A thorough review of the implementation should convince our team that they are correct and secure, with all requirements met.
  2. Code clarity and quality: Succinct, easy-to-follow code with appropriate naming conventions. Utilize Rust’s type system for flexibility and security (e.g., compile-time checks where possible), and avoid external crates. Optimizations should be a lower priority than clarity, but can be included behind a feature flag as a bonus.
  3. Documentation quality: Provide comprehensive README’s, Cargo docs, and inline comments where code itself is not self-explanatory. Prioritize clarity and readability.
@brunny-eth brunny-eth added the bounty these are good issues for contributors and are eligible for cash bounties label Sep 10, 2024
@Autoparallel Autoparallel changed the title Bounty: fix underconstrained variables in 3 circuits Bounty: fix underconstrained variables in two templates Sep 11, 2024
@Autoparallel Autoparallel changed the title Bounty: fix underconstrained variables in two templates Bounty: determine/fix underconstrained variables in two templates Sep 11, 2024
@pluto pluto deleted a comment from brunny-eth Sep 11, 2024
@Autoparallel Autoparallel changed the title Bounty: determine/fix underconstrained variables in two templates bounty: determine/fix underconstrained variables in two templates Sep 11, 2024
@Autoparallel Autoparallel pinned this issue Sep 11, 2024
@aybanda
Copy link

aybanda commented Sep 12, 2024

@brunny-eth
I'm interested in solving this, can you assign this to me?

@Autoparallel
Copy link
Contributor

@brunny-eth I'm interested in solving this, can you assign this to me?

I'm on it :)

@brunny-eth
Copy link
Contributor Author

all yours @aybanda. let us know when its ready for a review, we'll check back in a few days to see if you've made some progress 😄

@aybanda
Copy link

aybanda commented Sep 17, 2024

Working my way through will update you on the progress as early as possible

@brunny-eth
Copy link
Contributor Author

hey @aybanda, make any progress here? if not, we'll open it up to others that might be interested. let me know what you're thinking

@aybanda aybanda removed their assignment Oct 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bounty these are good issues for contributors and are eligible for cash bounties
Projects
None yet
Development

No branches or pull requests

3 participants