-
Notifications
You must be signed in to change notification settings - Fork 43
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
Endpoint(s) to update the client's partial MMR #32
Comments
How are you thinking about the RPC endpoint for this? I'm assuming we'd need to take a list of block numbers as an input (maybe something else as well?), and then return some kind of "mmr delta" which can be applied to a locally-stored partial MMR. |
I'm thinking the client would send only it's last seen |
Say the client is currently at block 1000 and the chain is at block 2000. Let's also say that the client has notes which it can consume at blocks 1200 and 1500 (for now, I'm assuming that info about these notes comes from a separate endpoint). At the end of the sync, the partial MMR we want to end up with would be with peaks up to block 2000, and then extra nodes so that we can build authentication paths to leaves at positions 1200 and 1500. Would we have another endpoint to retrieve these authentication paths? |
It should be the same endpoint you mentioned previously
Or am I missing something? |
Let's think through that endpoint as well because I think how that endpoint works may have implications for this endpoint. One thing to consider is that there are two separate Merkle authentication paths needed to prove that a note is in the MMR:
Originally, I was thinking that the user would get the first path from |
superseeded by #43 |
When a client comes back online, it needs to fetch data from the rollup to update its local state. One of the data structures that has to be update is the client's partial MMR (used to maintain authentication proofs for notes of various blocks).
Tasks
The text was updated successfully, but these errors were encountered: