Commit Graph

59 Commits

Author SHA1 Message Date
Danny Ryan
11d164748c add 'valid' when de-deduplication of attestations on gossip subnets 2020-04-22 14:45:01 -06:00
Danny Ryan
d8662d49ea Merge pull request #1730 from ethereum/bootnode-enr
add note about distributing bootnode ENRs prior to genesis
2020-04-22 14:38:38 -06:00
Danny Ryan
3d4122a2f6 add note about distributing bootnode ENRs prior to genesis 2020-04-22 14:33:57 -06:00
Jacek Sieka
4915014a19 simplify block range request description
There's room for ambiguity as to what `count` means - this clarifies
that it always relates to the slot, and not the number of blocks in the
response which allows clients to request ranges epoch by epoch (for
example) without worrying about overlaps caused by empty slots.
2020-04-20 20:03:15 +02:00
Danny Ryan
e58cfedb68 clarify ssz_snappy for gossip 2020-04-16 11:12:24 -06:00
Danny Ryan
2a36f366ef Merge pull request #1710 from paulhauner/patch-20
Tighten aggregate attn propogation condition
2020-04-07 18:56:04 -06:00
Danny Ryan
26492651b6 Merge pull request #1706 from paulhauner/patch-19
Redefine attestation propogation condition
2020-04-07 18:55:41 -06:00
Paul Hauner
c96a3366fa Tighten aggregate attn propogation condition 2020-04-07 16:07:41 +10:00
Paul Hauner
616385a094 Fix spelling mistake 2020-04-07 07:45:15 +10:00
Paul Hauner
021cb98dbb Use epoch for attestation subnet seen-ness. 2020-04-07 07:05:51 +10:00
Danny Ryan
bdf087d7f3 add notes about how to handle peer discovery and gossip topics prior to genesis 2020-04-06 09:57:23 -06:00
Paul Hauner
7d4b97240b Redefine attestation propogation condition 2020-04-06 17:46:33 +10:00
Paul Hauner
2daa26442b Tighten restriction on a "seen" attestation
Declares that only a verified block can stop an attestation from being propagated.

This achieves two things:

1. Ensures that clients don't need to scan invalid blocks for attestations and then modify their state based upon them.
1. Disallows "muting" attestations by sending around a junk block with that attestation in it.
2020-03-30 10:44:46 +11:00
Danny Ryan
d42e08a6e1 verify proposer sig before proposer shuffling in p2p block gossip conditions 2020-03-26 11:43:32 -06:00
Danny Ryan
050b42806d Merge pull request #1684 from ethereum/enr-ping
MetaData and Ping
2020-03-26 10:40:46 -06:00
Danny Ryan
ee45cf77ef proto feedback on MetaData 2020-03-26 07:47:20 -06:00
Danny Ryan
d5a9af6469 update ping protocol to use MetaData 2020-03-25 12:08:27 -06:00
Paul Hauner
88fddf2379 Remove unneccessary clock disparity check
There is no need to mention clock disparity when comparing two static slot values (assuming the clock disparity is less than a slot, even then I don't think that's the intention).
2020-03-24 08:13:36 -06:00
Age Manning
f227e026fa Draft PING and ENR rpc protocol 2020-03-24 15:10:47 +11:00
Age Manning
cf20a7ae3e Shift some ENR fields to MAY 2020-03-24 15:07:43 +11:00
Danny Ryan
e6998a61cd remove IK handshake from noise spec (removed in core libp2p specs) 2020-03-17 10:54:48 -06:00
Danny Ryan
5315f3db35 clarify proposer_index must be from expected shuffling when validating block gossip 2020-03-13 12:00:34 -06:00
Danny Ryan
a612df1119 minor typos and clarifications in fork choice 2020-03-11 16:11:42 -06:00
Danny Ryan
0881e21dc5 cleanup gossip topic fork digest based on PR feedback 2020-03-11 12:02:31 -06:00
Danny Ryan
fccd3ab1ce clarify hex-encoded bytes string representation for fork digest in gossip topic
Co-Authored-By: Diederik Loerakker <proto@protolambda.com>
2020-03-10 15:04:44 -06:00
Danny Ryan
415544bf03 modify gossip topics to use ForkDigest 2020-03-10 14:44:35 -06:00
Danny Ryan
b25ca8e32c Merge branch 'gossip-topic' of https://github.com/status-im/eth2.0-specs into status-im-gossip-topic 2020-03-10 14:02:44 -06:00
Danny Ryan
0d01299d17 Merge pull request #1648 from sgryphon/feature/clarify-store-signed-block
Put back in a requirement to store recent signed blocks
2020-03-10 13:13:33 -06:00
Danny Ryan
d6eedd95c0 fix wording to be clear it is about serving blocks
Co-Authored-By: Diederik Loerakker <proto@protolambda.com>
2020-03-10 13:04:28 -06:00
Danny Ryan
bd5231a975 Merge pull request #1614 from ethereum/eth2-enr
add eth2 key/value ENR to phase 0 p2p
2020-03-10 13:02:32 -06:00
Danny Ryan
1818f349ad add ForkDigest type, clarify how genesis_validators_root is mixed into domains for chain isolation in p2p faq 2020-03-10 11:59:34 -06:00
Sly Gryphon
da5720f9d1 Put back in a requirement to store recent signed blocks that was removed when SignedBeaconBlock was introduced (prior to that the signature was in BeaconBlock, which was recorded in Store). 2020-03-10 21:31:03 +10:00
Danny Ryan
6230a22976 Merge pull request #1606 from ethereum/rpc-snappy-lengths
RPC chunks with streaming SSZ decoding, snappy frames, and stricter DOS limits where possible.
2020-03-09 11:04:12 -06:00
Danny Ryan
7e04989e29 add genesis_validators_root to beaconstate and utilize in sig domain separation as well as fork separation 2020-03-05 09:21:32 -07:00
Danny Ryan
37b1fed8ff update eth2 ENR field to use ENRForkID 2020-03-04 14:16:30 -07:00
Danny Ryan
5dae252f56 add eth2 key/value ENR to phase 0 p2p 2020-03-04 12:33:23 -07:00
Jacek Sieka
38323d8186 Add faq 2020-03-01 17:17:29 +01:00
protolambda
bb82a051ff clean up, add invalid input handling 2020-02-27 19:39:34 +00:00
Danny Ryan
4d72dcf3ab @hwwhww feedback
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2020-02-27 12:00:55 -06:00
Jacek Sieka
61f661b3ec Update specs/phase0/p2p-interface.md
Co-Authored-By: Danny Ryan <dannyjryan@gmail.com>
2020-02-20 08:23:09 +01:00
Jacek Sieka
52b45ab9de Add fork version to topic
Gossipsub peers are separate from the ETH2 RPC protocol, and thus cannot
rely on the application-level `Status` negotiation to establish if
they're on the same network.

Segregating gossipsub topics by fork version decouples RPC from gossip
further and allows peers to more easily listen only to the traffic of
the network they're interested in, without further negotiation.
2020-02-17 10:03:32 +01:00
Danny Ryan
40b4931f01 cleanup attester slashing conditon code snippet
Co-Authored-By: Diederik Loerakker <proto@protolambda.com>
2020-02-13 11:17:19 -07:00
Danny Ryan
a7ef70eb9b add DoS prevention validation conditions to voluntary_exit, proposer_slashing, and attester_slashing gossipsub channels 2020-02-12 15:56:03 -07:00
Danny Ryan
f441fadfff pr feedback
Co-Authored-By: Diederik Loerakker <proto@protolambda.com>
2020-02-12 15:50:22 -07:00
Danny Ryan
f8b72f5057 add lower bound condition on block gossip 2020-02-12 12:07:57 -07:00
Danny Ryan
714a7de8a2 reorder gossip conditions to put cheap checks before signature verifications 2020-02-12 11:59:00 -07:00
Danny Ryan
bf8252aeb6 subnet validation PR feedback 2020-02-11 15:46:30 -07:00
Danny Ryan
8d16d428e0 fix up some p2p validation conditions based on PR feedback 2020-02-10 21:35:39 -07:00
Danny Ryan
1ca4e3538c prevent multiple beacon blocks from same proposer in a given slot 2020-02-10 19:28:37 -07:00
Danny Ryan
118a755bbb create SignedAggregateAndProof to prevent DoS attacks 2020-02-10 19:18:14 -07:00