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

Light client proof verify chunked txs #1591

Open
eyusufatik opened this issue Dec 11, 2024 · 0 comments · May be fixed by #1618
Open

Light client proof verify chunked txs #1591

eyusufatik opened this issue Dec 11, 2024 · 0 comments · May be fixed by #1618
Assignees
Milestone

Comments

@eyusufatik
Copy link
Member

right now we don't do anything about chunked bitcoin transactions.

a solution for verifying batch proofs that were sent to DA in a chunk-aggregator set up would look like this:

1 - To LightClientCircuitOutput we add a HashMap of wtxid => data.
2 - In the circuit, whenever we see a chunk, we push to this HashMap.
3 - Since the HashMap acts as a light client state now, when we encounter an aggregator we search the map for the chunks. If we cant find any of them we discard the aggregator. (if the aggregator somehow lands on Bitcoin before the chunks, we can send the aggregator again)
4- If we have all the cunks, we concat verify and go on with our normal light client execution.

Further optimizations can be done regarding the size of this newly added light client circuit state, such as instead of having a mapping of wtxid => data, we merkleize the chunks and once we know we'll need the chunks, we provide the circuit with the chunks + their merkle proof.

@eyusufatik eyusufatik added this to the Fork 1 milestone Dec 11, 2024
@rakanalh rakanalh self-assigned this Dec 13, 2024
@rakanalh rakanalh linked a pull request Dec 17, 2024 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants