prysm-pulse/slasher
2020-06-09 15:40:48 -07:00
..
beaconclient Disable some static analysis checks for coverage builds (#6105) 2020-06-03 19:22:48 +00:00
cache Add RemoveOldestFromCache and save span cache on exit (#5953) 2020-05-22 19:44:48 +00:00
db New spanner db structure (#6061) 2020-06-02 10:41:21 -04:00
detection Remove unused code (#6065) 2020-05-31 15:47:15 -07:00
flags Update to v0.12 (#5614) 2020-06-09 15:40:48 -07:00
node Log commit hash on slasher startup (#6138) 2020-06-05 12:04:12 +00:00
rpc Log commit hash on slasher startup (#6138) 2020-06-05 12:04:12 +00:00
BUILD.bazel Refactor dependencies, make Prysm "go gettable" (#6053) 2020-05-31 14:44:34 +08:00
main.go Ran code cleanup from goland (#6064) 2020-05-31 15:08:36 -05: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 Refactor dependencies, make Prysm "go gettable" (#6053) 2020-05-31 14:44:34 +08: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.