9 releases (5 breaking)
0.6.0 | Apr 20, 2023 |
---|---|
0.5.0 | Mar 27, 2023 |
0.4.1 | Dec 16, 2022 |
0.4.0 | Oct 31, 2022 |
0.1.0 | Oct 5, 2022 |
#25 in #tries
462 downloads per month
130KB
3K
SLoC
Ethereum Trie Utils
Currently a WIP and not the most performant.
Types and functions to work with Ethereum partial tries, which are identical to the tries described in the Ethereum yellow paper with the exception that nodes that we do not care about are replaced with Hash
nodes. A Hash
node just contains the merkle hash of the node it replaces.
As a concrete example, we may only care about the storage touched by a given txn. If we wanted to generate a PartialTrie
for this, we would include the minimum number of nodes needed such that all of the storage addresses involved (leaves) are included in the partial trie. Since we may need to include Branch
nodes, branch children that are not relevant for any of the storage of the txn are replaced with Hash
nodes.
License
Licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Dependencies
~2.3–8.5MB
~66K SLoC