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

(feature): Vk Verification #301

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

protocolwhisper
Copy link

Implement Validation Process for Verifying Key Contract

@sifnoc
Copy link
Member

sifnoc commented Sep 9, 2024

This can be used as an interface contract if someone (or you) implements the remaining verification process for the verifier key contract.

I would like to suggest that vkVerifier does not need to be inherited into the Summa contract. The contract should be independent, as it can be used for any verifying key contract.

The vkVerifier should:

  • Load data from the deployed verifier contract (InclusionVerifier.sol in V1 or VerifyingKey.sol in V2), with the contract address provided by the user. You can refer to this example:
    extcodecopy(vkContract, 0x00, readOffset, 0x20)
  • The current verifying_vk method looks good, but it requires additional inputs to compare all elements of the keys, not just vk_digest, k, n_inv, and omega, but the rest of them as well.

I would be happy to accept your contribution if you modify the contract to be used as the final step in the validation process.

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.

2 participants