prysm-pulse/slasher
Alon Muroch 98557e8f5e
highest slashing attestation RPC endpoint (#7647)
* highest slashing attestation RPC endpoint

* slasher mock fix

* Update proto/slashing/slashing.proto

Co-authored-by: Shay Zluf <thezluf@gmail.com>

* comments + small fixes

* PR review ctx comments and fixes

Co-authored-by: Shay Zluf <thezluf@gmail.com>
2020-11-22 08:51:20 +00:00
..
beaconclient Update TestMain() to use os.Exit() (#7814) 2020-11-13 18:28:14 -08:00
cache Slasher highest source target (#7604) 2020-10-26 14:15:42 +02:00
db Update TestMain() to use os.Exit() (#7814) 2020-11-13 18:28:14 -08:00
detection Source lrg target (#7839) 2020-11-17 17:17:21 +00:00
flags Slasher highest source target (#7604) 2020-10-26 14:15:42 +02:00
node Update TestMain() to use os.Exit() (#7814) 2020-11-13 18:28:14 -08:00
rpc highest slashing attestation RPC endpoint (#7647) 2020-11-22 08:51:20 +00:00
BUILD.bazel Fix creation time of beacon-node, validator and slasher (#7886) 2020-11-21 21:37:03 +00:00
main.go Slasher highest source target (#7604) 2020-10-26 14:15:42 +02:00
README.md Update README for Slasher (#5106) 2020-03-15 18:46:21 +00:00
usage_test.go Applies assertion funcs to slasher/* tests (#6998) 2020-08-18 12:41:25 +00:00
usage.go Slasher highest source target (#7604) 2020-10-26 14:15:42 +02: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.