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: Starknet storage proof verifier #189

Merged
merged 15 commits into from
Oct 17, 2023

Conversation

maciejka
Copy link
Contributor

@maciejka maciejka commented Oct 10, 2023

Starknet storage proof verifier.

Pull Request type

Please check the type of change your PR introduces:

  • Bugfix
  • Feature
  • Code style update (formatting, renaming)
  • Refactoring (no functional changes, no API changes)
  • Build-related changes
  • Documentation content changes
  • Other (please describe):

What is the current behavior?

Issue Number: N/A

What is the new behavior?

Does this introduce a breaking change?

  • Yes
  • No

Other information

@maciejka maciejka changed the title Starknet storage proof verifier feat: Starknet storage proof verifier Oct 10, 2023
@0xLucqs
Copy link
Collaborator

0xLucqs commented Oct 11, 2023

@maciejka
Copy link
Contributor Author

can't this live here ? https://github.com/keep-starknet-strange/alexandria/blob/main/src/data_structures/src/merkle_tree.cairo

It is not the same thing. merkle_tree.cairo is an implementation of generic Merkle Tree while proof.cairo verifies Starknet storage which use binary Merkle-Patricia Trie.

@0xLucqs
Copy link
Collaborator

0xLucqs commented Oct 11, 2023

It's not the same thing indeed but they are both related to merkle trees, don't you think they should live in the same crate ?

@maciejka
Copy link
Contributor Author

It's not the same thing indeed but they are both related to merkle trees, don't you think they should live in the same crate ?

Are you suggesting to put storage_proof into data_structures crate?

@0xLucqs
Copy link
Collaborator

0xLucqs commented Oct 11, 2023

Hmm I’d rather move the merkle tree out of the data structure crate and create a ˋmerkle_treeˋ crate that would hold the merkle tree and merkle proof

@maciejka
Copy link
Contributor Author

Hmm I’d rather move the merkle tree out of the data structure crate and create a ˋmerkle_treeˋ crate that would hold the merkle tree and merkle proof

Why a separate crate? Because they are more complex data structes than queue, stack, vec?

@0xLucqs
Copy link
Collaborator

0xLucqs commented Oct 12, 2023

Because storage proof doesn’t really make sense in data structure and I think that grouping merkle tree and storage proof verification makes sense

@maciejka
Copy link
Contributor Author

Because storage proof doesn’t really make sense in data structure and I think that grouping merkle tree and storage proof verification makes sense

Reorganized code under merkle_tree crate as you suggested. I am not convinced but it is better to try and fix later instead of spending time to discuss it.

@0xLucqs 0xLucqs merged commit 2cd5cff into keep-starknet-strange:main Oct 17, 2023
3 checks passed
@github-actions github-actions bot locked and limited conversation to collaborators Oct 19, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants