-
Notifications
You must be signed in to change notification settings - Fork 183
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
Add sideloading functionality to neutrino #285
base: master
Are you sure you want to change the base?
Commits on Apr 10, 2024
-
sideload: Initialize new package.
This commit introduces the `sideload` package, designed to facilitate the sideloading of Bitcoin blockchain headers from external sources. Key components and changes: - **Interfaces and Core Types**: Introduction of several interfaces and types such as `SourceType`, `dataType`, `dataSize`, `HeaderValidator`, `HeaderWriter`, `Checkpoints`, and `LoaderSource` to abstract the concepts of blockchain header validation, storage, and source management. - **Loader Implementation**: The core of the sideload functionality is encapsulated in the `SideLoader` struct, which includes logic for header fetching, validation, and writing. - **Binary Loader for Headers**: An implementation of the LoaderSource interface for binary encoded headers is included in this commit Signed-off-by: Ononiwu Maureen <maureen.ononiwu@outlook.com>
Configuration menu - View commit details
-
Copy full SHA for 8435fc5 - Browse repository at this point
Copy the full SHA 8435fc5View commit details -
neutrino: Add Checkpoints Structure
This commit introduces a new `Checkpoints` structure for managing block header checkpoints. Motivation: Decoupling the logic for finding next and previous header checkpoints from the `blockmanager`, facilitating sharing this functionality between the `sideload` package and `blockmanager`, promoting code reuse and consistency across the components. Signed-off-by: Ononiwu Maureen <maureen.ononiwu@outlook.com>
Configuration menu - View commit details
-
Copy full SHA for b34d035 - Browse repository at this point
Copy the full SHA b34d035View commit details -
neutrino: Add block header validator implemenation
This commit introduces a new structure to decouple the process of validating `wire.BlockHeaders` from the blockmanager. Signed-off-by: Ononiwu Maureen <maureen.ononiwu@outlook.com>
Configuration menu - View commit details
-
Copy full SHA for 8e8c1e0 - Browse repository at this point
Copy the full SHA 8e8c1e0View commit details -
neutrino: Add block header writer implementation.
This commit introduces a new structure to decouple the process of writing `wire.BlockHeaders` to the block header store from the blockmanager. Signed-off-by: Ononiwu Maureen <maureen.ononiwu@outlook.com>
Configuration menu - View commit details
-
Copy full SHA for f278f17 - Browse repository at this point
Copy the full SHA f278f17View commit details -
neutrino: Add sideloading to chainservice
This commit adds the sideoading functionality to neutrino's chainservice. Signed-off-by: Ononiwu Maureen <maureen.ononiwu@outlook.com>
Configuration menu - View commit details
-
Copy full SHA for a69f275 - Browse repository at this point
Copy the full SHA a69f275View commit details -
neutrino: Added itest for sideloading.
Signed-off-by: Ononiwu Maureen <maureen.ononiwu@outlook.com>
Configuration menu - View commit details
-
Copy full SHA for 9f2a37e - Browse repository at this point
Copy the full SHA 9f2a37eView commit details