lighthouse/eth2/utils
Michael Sproul 2d8e2dd7f5
Implement Slashing Protection (#1116)
* Implement slashing protection

Roll-up of #588 with some conflicts resolved

* WIP improvements

* Require slot uniqueness for blocks (rather than epochs)
* Native DB support for Slot and Epoch
* Simplify surrounding/surrounded-by queries

* Implement unified slashing protection database

A single SQL database saves on open file descriptors.

* Make slashing protection concurrency safe.

Revive tests, add parallel tests.

* Some simplifications

* Auto-registration, test clean-ups

* More tests, clean-ups, hardening

* Fix comments in BLS

* Optimise bulk validator registration

* Delete outdated tests

* Use bundled SQLite in slashing protection

* Auto-register validators in simulation

* Use real signing_root in slashing protection

* Update book for --auto-register

* Refine log messages and help flags

* Correct typo in Cargo.toml authors

* Fix merge conflicts

* Safer error handling in sqlite slot/epoch

* Address review comments

* Add attestation test mutating block root

Co-authored-by: pscott <scottpiriou@gmail.com>
2020-05-18 16:25:16 +10:00
..
bls Implement Slashing Protection (#1116) 2020-05-18 16:25:16 +10:00
cached_tree_hash Stable futures (#879) 2020-05-17 11:16:48 +00:00
clap_utils Stable futures (#879) 2020-05-17 11:16:48 +00:00
compare_fields Initial work towards v0.2.0 (#924) 2020-03-17 17:24:44 +11:00
compare_fields_derive Stable futures (#879) 2020-05-17 11:16:48 +00:00
deposit_contract Stable futures (#879) 2020-05-17 11:16:48 +00:00
eth2_config Stable futures (#879) 2020-05-17 11:16:48 +00:00
eth2_hashing Stable futures (#879) 2020-05-17 11:16:48 +00:00
eth2_interop_keypairs Stable futures (#879) 2020-05-17 11:16:48 +00:00
eth2_key_derivation Switch to ring for hkdf (#1134) 2020-05-12 15:48:39 +10:00
eth2_keystore Stable futures (#879) 2020-05-17 11:16:48 +00:00
eth2_testnet_config Stable futures (#879) 2020-05-17 11:16:48 +00:00
eth2_wallet Stable futures (#879) 2020-05-17 11:16:48 +00:00
hashset_delay Stable futures (#879) 2020-05-17 11:16:48 +00:00
int_to_bytes Stable futures (#879) 2020-05-17 11:16:48 +00:00
lighthouse_bootstrap Fix issues with testnet dir, update docs (#992) 2020-04-17 17:49:29 +10:00
lighthouse_metrics Stable futures (#879) 2020-05-17 11:16:48 +00:00
logging Stable futures (#879) 2020-05-17 11:16:48 +00:00
merkle_proof Stable futures (#879) 2020-05-17 11:16:48 +00:00
remote_beacon_node Stable futures (#879) 2020-05-17 11:16:48 +00:00
rest_types Stable futures (#879) 2020-05-17 11:16:48 +00:00
safe_arith Use checked arithmetic in types and state proc (#1009) 2020-04-20 12:35:11 +10:00
serde_hex Stable futures (#879) 2020-05-17 11:16:48 +00:00
slot_clock Stable futures (#879) 2020-05-17 11:16:48 +00:00
ssz Stable futures (#879) 2020-05-17 11:16:48 +00:00
ssz_derive Stable futures (#879) 2020-05-17 11:16:48 +00:00
ssz_types Stable futures (#879) 2020-05-17 11:16:48 +00:00
swap_or_not_shuffle Stable futures (#879) 2020-05-17 11:16:48 +00:00
test_random_derive Stable futures (#879) 2020-05-17 11:16:48 +00:00
tree_hash Stable futures (#879) 2020-05-17 11:16:48 +00:00
tree_hash_derive Stable futures (#879) 2020-05-17 11:16:48 +00:00