Skip to content

Fusion protocol upgrade items #20

Description

@markblundeberg

For 'version 2' protocol it is worth bringing in a bunch of things at once. Each protocol upgrade is an annoyance for users who must update their wallet version. Combining everything into one big switchover, both client and server can thereafter be polished up independently.

Key items:

  • Params prefetching/caching (server params caching and pre-connection client side work (less net spammy!) #13 )
    • Not only does this reduce traffic, it means on the wallet side there are more options for pre-adjusting a fusion (For example, user could generate a manual fusion candidate and remove unwanted tiers) and the API is also more convenient for third party plugins to do fusions. Desired flow is setup-adjust-connect, with failure in case of a (rare) change in parameter set.
  • Players indicate dynamic number of components, and a minimum-total-component-count when subscribing. (idea: client dynamic choosiness #17)
    • Server will primarily use component count to determine launching/ending of fusions. Though each player can indicate a different minimum, it's still easy for server to figure out the thresholds.
  • Encrypted connections for covert submission (so Tor exit nodes can't spy on the process, even though they don't learn much as-is); multiplexed via one static port so server admin is easier.
  • Minor change: minimum excess fee is fixed by protocol (split tx overhead over the indicated minimum # of components) instead of being server-defined.
  • Protocol fixes suggested by Kudelski.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions