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

MASP finalization plan #2094

Closed
7 tasks done
cwgoes opened this issue Nov 5, 2023 · 5 comments
Closed
7 tasks done

MASP finalization plan #2094

cwgoes opened this issue Nov 5, 2023 · 5 comments
Assignees
Labels

Comments

@cwgoes
Copy link
Contributor

cwgoes commented Nov 5, 2023

Proposed order after reading through the issue backlog:

  1. Investigate the epoch transition proof issue and agree on a plan
  2. Convert MASP to a native validity predicate (rebase and merge masp: move to native VP #2051)
  3. Check that our imported versions of the upstream MASP crates are the latest
  4. Implementing missing validation (Missing MASP Transaction Validation #1373 and Masp/Base boundary conditions #1962)
  5. Check/fix unsafe validation (Unsafe MASP Transaction Validation #1374)
  6. Audit MASP & MASP rewards
  7. Other stuff
@adrianbrink
Copy link
Member

Ensure that wallets have an easy library to import to generate proofs that we can independently optimize.

@adrianbrink
Copy link
Member

also check that proofing times don't scale with epoch sizes.

@cwgoes
Copy link
Contributor Author

cwgoes commented Nov 24, 2023

Two points to check on the epoch transition issue:

  1. We should allow proofs with reference to past commitment tree anchors.
  2. We should allow unshielding from previous epochs (the user will receive fewer rewards, we can show a warning in extreme cases).

Together per discussion we think that these two changes should resolve the issue.

@cwgoes cwgoes assigned grarco and unassigned karbyshev and sug0 Nov 24, 2023
@cwgoes
Copy link
Contributor Author

cwgoes commented Nov 24, 2023

Notes:

  • Rework to avoid unnecessary conversions on AssetType, which should be used all the way through to the edge of CLI client input.
  • Discrete conversions with threshold: amounts below conversion are currently left behind - we should just send them anyways, and later allow unshielding (with no conversions)
  • Check on proof generation time increasing (maybe more notes to convert?)
  • Check on duplicate SpendDescriptions, OutputDescriptions, etc. - seems to be the case in recent iterations of the client.

@cwgoes
Copy link
Contributor Author

cwgoes commented Nov 24, 2023

  • Fix MASP verifying key / parameters loading (should only load once into memory when the ledger starts) (see reference here)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

6 participants