prysm-pulse/slasher
Shay Zluf 446bfca4f3
Slasher redial (#6889)
* Restart streams on internal error
* debug instead of fatal on retry
* Merge branch 'master' of github.com:prysmaticlabs/prysm into slasher_redial
* goimports
* conn status fix
* Merge branch 'master' into slasher_redial
2020-08-05 21:17:00 +00:00
..
beaconclient Slasher redial (#6889) 2020-08-05 21:17:00 +00:00
cache Historical detection fix (#6455) 2020-07-07 05:57:40 +03:00
db Code quality issues - Remove unused code (#6864) 2020-08-05 13:59:46 +02:00
detection Code quality issues - Remove unused code (#6864) 2020-08-05 13:59:46 +02:00
flags Add --historical-slasher-node flag to simplify slasher usage (#6627) 2020-07-20 20:23:48 +00:00
node Fix CMD Config and modify --historical-slasher-node (#6730) 2020-08-02 22:09:10 +00:00
rpc Slasher protection race condition fix (#6871) 2020-08-04 19:50:23 +00:00
BUILD.bazel Add dockerhub image endpoints (#6230) 2020-06-12 17:06:12 +00:00
main.go Add --historical-slasher-node flag to simplify slasher usage (#6627) 2020-07-20 20:23:48 +00:00
README.md Update README for Slasher (#5106) 2020-03-15 18:46:21 +00:00
usage_test.go Refactor dependencies, make Prysm "go gettable" (#6053) 2020-05-31 14:44:34 +08:00
usage.go Add --historical-slasher-node flag to simplify slasher usage (#6627) 2020-07-20 20:23:48 +00:00

Hash Slinging Slasher Server Implementation

This is the main project folder for a slasher server implementation for Ethereum Serenity in Golang 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.