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

[draft] Handover Protocol (or The PR Formerly Known as Spongebob) #186

Draft
wants to merge 42 commits into
base: rocknroll
Choose a base branch
from

Commits on Sep 20, 2024

  1. Configuration menu
    Copy the full SHA
    3a712db View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    d721d03 View commit details
    Browse the repository at this point in the history
  3. Clarifying some refresh tests

    cygnusv committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    a760a9c View commit details
    Browse the repository at this point in the history
  4. Yay! Tests work when blinding is deactivated, so the problem is unbli…

    …nding
    
    Or more correctly, the problem must be we're not unblinding shares in tests. This makes sense because the new verifiability features for updates were designed to work on top of blinded shares, and these tests were written for the previous share update code
    cygnusv committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    88994f5 View commit details
    Browse the repository at this point in the history
  5. Some tests fixed: share updating should be done on top of blinded shares

    As suspected 2 commits ago
    cygnusv committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    16e296c View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    b23fae4 View commit details
    Browse the repository at this point in the history
  7. Clarification

    cygnusv committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    1459c1f View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    de9fd32 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    2b370fd View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    920353f View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    1e45be3 View commit details
    Browse the repository at this point in the history
  12. First version of UpdateTranscript validation

    For the moment, just validating share update commitments
    cygnusv committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    4bfcf20 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    4e2d751 View commit details
    Browse the repository at this point in the history
  14. cargo-fix'n stuff

    cygnusv committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    bdb56a2 View commit details
    Browse the repository at this point in the history
  15. UpdateTranscript validation: poly commitments fit the update type

    * For refresh: C_0 == 1,
    * For recovery at root t: sum(r * C_i) == 1
    cygnusv committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    7fe5327 View commit details
    Browse the repository at this point in the history
  16. Comments

    cygnusv committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    0f44b0c View commit details
    Browse the repository at this point in the history
  17. Code quality

    cygnusv committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    0a02df7 View commit details
    Browse the repository at this point in the history
  18. Preparing refactor

    cygnusv committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    f7b3356 View commit details
    Browse the repository at this point in the history
  19. preparing refactor 2

    cygnusv committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    6c8e36d View commit details
    Browse the repository at this point in the history
  20. preparing for refactor 3

    cygnusv committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    7d565a9 View commit details
    Browse the repository at this point in the history
  21. Introduce UpdatableBlindedKeyShare as part of refresh API

    Get rid of PrivateKeyShare and UpdatedPrivateKeyShare at the refresh level. Instead, we'll continue to deal with BlindedKeyShares, since they're semantically similar to transcripts at the pvss & dkg level
    cygnusv committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    5f41897 View commit details
    Browse the repository at this point in the history
  22. Use BlindedKeyShare at the PVSS level

    Let the refresh layer deal with private keys
    cygnusv committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    dbaef87 View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    4f1f1b1 View commit details
    Browse the repository at this point in the history
  24. Basic refresh tests work again!

    Repurposed `PrivateKey.recover_share_from_updated_private_shares` code as the test function `combine_private_shares_at`, since it doesn't make sense to combine private key shares in production code.
    cygnusv committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    c61ccbd View commit details
    Browse the repository at this point in the history
  25. Configuration menu
    Copy the full SHA
    a2b17ad View commit details
    Browse the repository at this point in the history
  26. Configuration menu
    Copy the full SHA
    08ec657 View commit details
    Browse the repository at this point in the history
  27. Configuration menu
    Copy the full SHA
    5e6a5bc View commit details
    Browse the repository at this point in the history
  28. Configuration menu
    Copy the full SHA
    c3abb23 View commit details
    Browse the repository at this point in the history
  29. Configuration menu
    Copy the full SHA
    fabd1be View commit details
    Browse the repository at this point in the history
  30. First draft of HandoverTranscript - a.k.a. The Baton

    HandoverTranscript, a.k.a. "The Baton", represents the message an incoming node produces to initiate a handover with an outgoing node. After the handover, the incoming node replaces the outgoing node in an existing cohort, securely obtaining a new blinded key share, but under the incoming node's private key.
    cygnusv committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    26898a9 View commit details
    Browse the repository at this point in the history
  31. Configuration menu
    Copy the full SHA
    b9878af View commit details
    Browse the repository at this point in the history

Commits on Sep 23, 2024

  1. Configuration menu
    Copy the full SHA
    be4a91e View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    f00d592 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    24978fa View commit details
    Browse the repository at this point in the history
  4. PrivateKeys are never blinded directly

    This was meant to be a test-only function, but let's remove it to avoid misuse
    cygnusv committed Sep 23, 2024
    Configuration menu
    Copy the full SHA
    68daa42 View commit details
    Browse the repository at this point in the history
  5. Assorted cleanup

    cygnusv committed Sep 23, 2024
    Configuration menu
    Copy the full SHA
    dc41325 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    90c0d2c View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    966e265 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    7c32b2d View commit details
    Browse the repository at this point in the history
  9. Generating random DKG public keys should only be a test function

    For some reason, it was part of WASM bindings too
    cygnusv committed Sep 23, 2024
    Configuration menu
    Copy the full SHA
    18252f2 View commit details
    Browse the repository at this point in the history
  10. Consider using multipairings

    See issue #192
    cygnusv committed Sep 23, 2024
    Configuration menu
    Copy the full SHA
    9032e93 View commit details
    Browse the repository at this point in the history
  11. TODO: Next steps

    cygnusv committed Sep 23, 2024
    Configuration menu
    Copy the full SHA
    2304710 View commit details
    Browse the repository at this point in the history