prysm-pulse/slasher
terence tsao 6b82873737
Use validatorIndex instead of validatorID (#8498)
* Use ValidtorIndex across Prysm. Build ok

* First take at fixing tests

* Clean up e2e, fuzz... etc

* Fix new lines

* Update beacon-chain/cache/proposer_indices_test.go

Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>

* Update beacon-chain/core/helpers/rewards_penalties.go

Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>

* Update beacon-chain/core/helpers/shuffle.go

Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>

* Update validator/graffiti/parse_graffiti_test.go

Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>

* Raul's feedback

* Fix downcast int -> uint64

* Victor's feedback

* Replace validator id with validator index

* Replace validator id with validator index

* Typo

Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
2021-02-22 19:40:58 -06:00
..
beaconclient Use validatorIndex instead of validatorID (#8498) 2021-02-22 19:40:58 -06:00
cache Use validatorIndex instead of validatorID (#8498) 2021-02-22 19:40:58 -06:00
db Use validatorIndex instead of validatorID (#8498) 2021-02-22 19:40:58 -06:00
detection Use Custom Type ValidatorIndex Across Prysm (#8478) 2021-02-23 00:14:50 +00:00
flags Slasher highest source target (#7604) 2020-10-26 14:15:42 +02:00
node ETH2 Types: Slot (#8408) 2021-02-16 07:45:34 +00:00
rpc Use Custom Type ValidatorIndex Across Prysm (#8478) 2021-02-23 00:14:50 +00:00
BUILD.bazel Unify the pattern of using a package-level logger (#8245) 2021-01-11 20:03:28 +00:00
log.go Unify the pattern of using a package-level logger (#8245) 2021-01-11 20:03:28 +00:00
main.go Ajust constructor names of nodes (#8362) 2021-02-01 17:12:52 +00:00
README.md Fix Up READMEs for Mainnet (#7910) 2020-11-23 18:47:55 +00:00
usage_test.go Applies assertion funcs to slasher/* tests (#6998) 2020-08-18 12:41:25 +00:00
usage.go Add Backup Webhooks to All Prysm Services With DBs (#8025) 2020-12-03 22:28:57 +00:00

Slasher Implementation

This is the main project folder for a slasher implementation for eth2 written in Go by Prysmatic Labs. A slasher listens for all broadcasted messages using a running beacon node in order to detect slashable attestations and block proposals. It uses the min-max-surround method by Protolambda.

The slasher requires a connection to a synced beacon node in order to listen for attestations and block proposals. To run the slasher, type:

bazel run //slasher -- \
    --datadir PATH/FOR/DB \
    --span-map-cache \
    --beacon-rpc-provider localhost:4000

The beacon node entered in beacon-rpc-provider will then receive slashings from the slasher client and send them to any requesting proposer to be put into a block. You can read more about configuration options for our slasher in our documentation portal