Uses old Rust 2015
|1.12.0||Apr 5, 2021|
Used in 3 crates (via vapcore-sync)
Light client logic and implementation.
A "light" client stores very little chain-related data locally unlike a full node, which stores all blocks, headers, receipts, and more.
This enables the client to have a much lower resource footprint in exchange for the cost of having to ask the network for state data while responding to queries. This makes a light client unsuitable for low-latency applications, but perfectly suitable for simple everyday use-cases like sending transactions from a personal account.
The light client performs a header-only sync, doing verification and pruning historical blocks. Upon pruning, batches of 2048 blocks have a number => (hash, TD) mapping sealed into "canonical hash tries" which can later be used to verify historical block queries from peers.