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

Always use a full tree #694

Merged
merged 9 commits into from Jun 2, 2022
Merged

Always use a full tree #694

merged 9 commits into from Jun 2, 2022

Conversation

bifurcation
Copy link
Collaborator

Based on #689

Closes #645

Copy link
Contributor

@TWal TWal left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Using full tree + filtered direct path seems like a fine combo!

As you said in #645 it not only faster, but also makes things a lot easier to understand in various places of the protocol.

I also like a lot the two examples you added (the one for filtered direct path, and the one for parent-hash link), they have a nice pedagogical value!

draft-ietf-mls-protocol.md Outdated Show resolved Hide resolved
draft-ietf-mls-protocol.md Outdated Show resolved Hide resolved
@bifurcation
Copy link
Collaborator Author

Interim 2022-05-26:

  • This will require some optimized implementations
  • Have people done performance evaulations?
  • How does this affect the secret tree?
    • Would change the structure to be a full tree
    • Always log(N) derivations to get to a leaf, instead of sometimes less
  • TODO: Hold this for next week, @bifurcation and @TWal to do performance evaluation

Co-authored-by: Theophile Wallez <theophile@wallez.net>
@bifurcation
Copy link
Collaborator Author

Mailing list post with performance metrics:
https://mailarchive.ietf.org/arch/msg/mls/42tmYeZIJRAAZTxnSb6pzXKZGa0/

draft-ietf-mls-protocol.md Outdated Show resolved Hide resolved
draft-ietf-mls-protocol.md Outdated Show resolved Hide resolved
draft-ietf-mls-protocol.md Outdated Show resolved Hide resolved
draft-ietf-mls-protocol.md Outdated Show resolved Hide resolved
draft-ietf-mls-protocol.md Outdated Show resolved Hide resolved
draft-ietf-mls-protocol.md Show resolved Hide resolved
@bifurcation
Copy link
Collaborator Author

Interim 2022-06-02:

  • @bifurcation presented performance data showing +/- ~20% on join
  • @Bren2010 asked about removing leaf index from LeafNodeHashInput in order to allow for precomputing blank subtree hashes
    • Even with leaf indices, can pre-generate, they just have to be in-place
    • No action
  • Clear to merge once editorial comments from @Bren2010 are addressed

@bifurcation bifurcation merged commit 731992b into main Jun 2, 2022
TWal added a commit to Inria-Prosecco/mls-star that referenced this pull request Jun 20, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

Always operate on a full tree
3 participants