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

Using CFIndex with fastsync mode #303

Open
cpacia opened this issue Nov 9, 2019 · 1 comment
Open

Using CFIndex with fastsync mode #303

cpacia opened this issue Nov 9, 2019 · 1 comment
Labels
enhancement New feature or request

Comments

@cpacia
Copy link
Contributor

cpacia commented Nov 9, 2019

The way bip157/158 works is there is a "filter header" chain, similar to the regular header chain, where each filter is hashed with the hash of the previous filter.

Full nodes and pruned nodes calculate the filter header hashes since they start indexing from genesis. However, fastsynced nodes only start indexing from the checkpoint and so the filter header hash they calculate for the checkpoint is incorrect... causing all subsequent filter header hashes to be incorrect as well.

If a neutrino node tried syncing from one they would detect that the node is serving up bad filter headers (since they don't link to the a hardcoded filter header checkpoint in the wallet) and ban the node.

I think a possible solution is to extend our checkpoint object with the hash of the filter header at the checkpoint, so that fast synced nodes can calculate the correct filter header chain.

@zquestz
Copy link
Contributor

zquestz commented Feb 28, 2020

I like this idea.

@zquestz zquestz added the enhancement New feature or request label May 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants