mirror of
https://github.com/sigp/lighthouse.git
synced 2026-03-03 16:51:41 +00:00
There was a discrepancy between the is_empty fields of fake signatures during testing, so I've added a small hack to set the is_empty field of a fake signature based on the byte content. Alternatively, we could just make it so that any fake signature is defined to be equal to any other.
Ethereum 2.0 Common Crates
Rust crates containing logic common across the Lighthouse project.
Per-Crate Summary
attester/: Core logic for attesting to beacon and shard blocks.block_proposer/: Core logic for proposing beacon blocks.fork_choice/: A collection of fork-choice algorithms for the Beacon Chain.state_processing/: Provides per-slot, per-block, and per-epoch state processing.types/: Defines base Ethereum 2.0 types (e.g.,BeaconBlock,BeaconState, etc).utils/:bls: A wrapper for an external BLS encryption library.boolean-bitfield: Provides an expandable vector of bools, specifically for use in Eth2.fisher-yates-shuffle: shuffles a list pseudo-randomly.hashing: A wrapper for external hashing libraries.honey-badger-split: Splits a list innparts without giving AF about the length of the list,n, or anything else.int-to-bytes: Simple library which converts ints into byte-strings of various lengths.slot_clock: translates the system time into Beacon Chain "slots". (Also provides another slot clock that's useful during testing.)ssz: an implementation of the SimpleSerialize serialization/deserialization protocol used by Eth 2.0.ssz_derive: provides procedural macros for deriving SSZEncode,Decode, andTreeHashmethods.swap_or_not_shuffle: a list-shuffling method which is slow, but allows for a subset of indices to be shuffled.test_random_derive: provides procedural macros for deriving theTestRandomtrait defined intypes.