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

fix: expmod precompile if modulus is 1 #1294

Merged
merged 2 commits into from
Oct 16, 2024
Merged

fix: expmod precompile if modulus is 1 #1294

merged 2 commits into from
Oct 16, 2024

Conversation

ivokub
Copy link
Collaborator

@ivokub ivokub commented Oct 8, 2024

Description

Even though EVM yellow paper defines 0^0=1, then this holds only if modulus is not 0 or 1. In either such case any exponentiation is 0.

Fixes LA audit Issue G

Type of change

  • Bug fix (non-breaking change which fixes an issue)

How has this been tested?

  • TestEdgeCases - changed the edge case test

How has this been benchmarked?

Not benchmarked

Checklist:

  • I have performed a self-review of my code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • I have added tests that prove my fix is effective or that my feature works
  • I did not modify files generated from templates
  • golangci-lint does not output errors locally
  • New and existing unit tests pass locally with my changes
  • Any dependent changes have been merged and published in downstream modules

@ivokub ivokub added the bug Something isn't working label Oct 8, 2024
@ivokub ivokub self-assigned this Oct 8, 2024
@ivokub ivokub merged commit f7b61b7 into master Oct 16, 2024
5 checks passed
@ivokub ivokub deleted the fix/audit-la-g-expmod branch October 16, 2024 08:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants