Commit Graph

3261 Commits

Author SHA1 Message Date
Hsiao-Wei Wang 6fdee75475
Fix phase0 types 2020-04-17 23:55:25 +08:00
Danny Ryan e58cfedb68
clarify ssz_snappy for gossip 2020-04-16 11:12:24 -06:00
Danny Ryan 4a94200c0b
Merge pull request #1712 from ethereum/hwwhww/inactivity_penalty_quotient_bug
Fix `INACTIVITY_PENALTY_QUOTIENT`
2020-04-14 11:53:43 -06:00
Hsiao-Wei Wang b2f6325db3
Fix `compute_committee` 2020-04-09 17:50:23 +08:00
Hsiao-Wei Wang 890c27d091
The input parameter `index` in `compute_shuffled_index` is the position of the given list, not `ValidatorIndex` 2020-04-09 17:33:14 +08:00
Hsiao-Wei Wang c10e59bdf7
Fix `INACTIVITY_PENALTY_QUOTIENT`
The amount of inactivity penalty was adjusted to half since we were applying penalty for missing FFG target and source. But now we only apply it for missing target, so `INACTIVITY_PENALTY_QUOTIENT` should be `2**24`.
2020-04-08 10:32:16 +08: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
Danny Ryan e86c5ef41d
final PR nitpicks 2020-04-03 10:29:35 -06:00
Danny Ryan c3e5ddaabc
Merge branch 'dev' into phase1-tests 2020-04-03 09:54:34 -06:00
Danny Ryan 246b46771e
address @hwwhww feedback 2020-04-03 09:46:57 -06:00
Danny Ryan f2c2da95ed
add compute_offset_slots 2020-04-03 09:19:56 -06:00
Danny Ryan 613f368c00
fix call to get_beacon_committee in process_crosslink_for_shard 2020-04-01 12:20:32 -06:00
Danny Ryan 16208790a5
Merge pull request #1699 from ethereum/hwwhww/unpack_compact_validator
Add `unpack_compact_validator` back
2020-03-31 10:40:45 -06:00
Hsiao-Wei Wang f82cdb7e68
beacon-chain.md: add `unpack_compact_validator` for `light-client-sync.md` 2020-03-31 22:13:48 +08:00
Hsiao-Wei Wang 071f6b5126
Gasprice rework: use `MIN_GASPRICE` as the initial gasprice and change `MIN_GASPRICE` to 8 gwei 2020-03-31 22:09:20 +08: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 073f78efa1
Merge branch 'dev' into phase1-tests 2020-03-29 17:04:25 -06:00
Danny Ryan d07aa00307
Merge pull request #1692 from ethereum/master
Backport v0.11.1 to dev
2020-03-29 16:38:50 -06: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 c46fe86839
Merge branch 'v011x' into publish-vs-subscribe 2020-03-26 10:48:23 -06:00
Danny Ryan a83e7a5ecc
proto PR feedback 2020-03-26 10:46:06 -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 7af6a3afa4
do not require non-aggregating validators to subscribe to attestation subnet for beacon committee duties 2020-03-25 15:56:26 -06:00
Danny Ryan d5a9af6469
update ping protocol to use MetaData 2020-03-25 12:08:27 -06:00
Danny Ryan b8d25dc5b4
Merge pull request #1682 from ethereum/reward-acc-bug
Attestation reward bug
2020-03-24 19:36:23 -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
Michael Sproul 1c49f99094
Fix bug in attestation reward calculation 2020-03-24 07:40:58 -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 2978f21a39
minor edit to validator get_attestation_signature 2020-03-19 15:17:06 -06:00
Jacek Sieka 759af67345
Normalize attestation signature getter name 2020-03-19 15:13:59 -06:00
Danny Ryan 2b8c32a347
Merge pull request #1664 from ethereum/div-zero-total-balance
avoid div by zero in extreme balance case
2020-03-19 08:50:09 -06:00
Danny Ryan 0a9b306d60
PR feedback from @hwwhww 2020-03-18 09:55:09 -06: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 e2ef4365e2
min total balance is now EFFECTIVE_BALANCE_INCREMENT. update testing 2020-03-16 11:19:21 -06:00
Danny Ryan d299b06a1c
fix custody bit calculation format 2020-03-16 09:52:27 -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
Dankrad Feist 9b7e0ab2be
Fix error in custody bit computation 2020-03-13 17:15:25 +00:00
Danny Ryan 1293320675
Merge branch 'dev' into phase1-tests 2020-03-12 07:12:41 -06:00
Danny Ryan c894f5ecec
fork choice error note 2020-03-11 16:41:27 -06:00
Danny Ryan a612df1119
minor typos and clarifications in fork choice 2020-03-11 16:11:42 -06:00
Danny Ryan 47bbffa0d6
'get_checkpoint_store' -> 'get_forkchoice_store' typo 2020-03-11 15:03:14 -06:00
Danny Ryan 81dc71c312
Merge pull request #1652 from ethereum/gossip-topics-with-fork-digest
Gossip topics with fork digest
2020-03-11 13:32:25 -06:00
Danny Ryan 4bcdf91e8b
Apply suggestions from code review
PR feedback

Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2020-03-11 13:24:30 -06:00
Danny Ryan 36e48fba99
enforce must match target to match head to avoid perverse incentive path 2020-03-11 12:51:05 -06:00
Danny Ryan 0881e21dc5
cleanup gossip topic fork digest based on PR feedback 2020-03-11 12:02:31 -06:00
Danny Ryan baee673124
add note about preparing for subnet backbone for forks 2020-03-10 17:29:39 -06:00
Danny Ryan e2918c6364
Merge pull request #1626 from ethereum/proposer-index
add proposer index to BeaconBlock
2020-03-10 15:10:07 -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
Diederik Loerakker ab24e7cab7
Merge pull request #1651 from ethereum/revert-forkchoice-header
revert fork choice store.blocks to BeaconBlock
2020-03-10 20:25:18 +01:00
Danny Ryan 3b7704a78f
Merge pull request #1649 from ethereum/eth1-voting-period-in-epochs
Eth1 voting period in epochs [updated for configs/phase1/tests compat.]
2020-03-10 13:24:03 -06:00
Danny Ryan 1c9ca3c168
Merge pull request #1635 from ethereum/rewards-overflow
handle rewards overflow
2020-03-10 13:23:21 -06:00
Danny Ryan c91eee6bdf
revert fork choice store.blocks to store BeaconBlock 2020-03-10 13:20:57 -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 1579072e15
add note about total balance overflowing 2020-03-10 13:12:17 -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
protolambda 55d436db51
simplify description of voting period time 2020-03-10 18:55:59 +01:00
protolambda 2d7a292d36
eth1 vote period constant in epochs: update configs, phase1, tests 2020-03-10 18:36:53 +01:00
Hsiao-Wei Wang 882b9ee035
Merge branch 'dev' into rewards-overflow 2020-03-11 00:41:17 +08: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 92eef0e00b
fix light client sig verification in phase 1 2020-03-09 14:52:30 -06: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
Danny Ryan f082aa6ca9
use EFFECTIVE_BALANCE_INCREMENT to normalize reward calculations 2020-03-03 15:34:02 -07:00
Danny Ryan 5e1fb79a8e
Merge pull request #1627 from ethereum/hysteris-fix
adjust hysteresis to avoid initial over-deposit incentive
2020-03-03 14:15:24 -07:00
Danny Ryan 33e7680836
make hysteresis calculations configurable 2020-03-03 10:58:47 -07:00
Danny Ryan 2d4ec7d52f
add REWARD_OVERFLOW_INCREMENT to avoid overflow in rewards calculation 2020-03-03 10:23:08 -07:00
Hsiao-Wei Wang b4c7481b35
Fix the misc table 2020-03-03 01:28:58 +01:00
Danny Ryan 0122081d05
hysteresis to -0.25/+1.25 2020-03-02 15:55:01 -07:00
Jacek Sieka 38323d8186
Add faq 2020-03-01 17:17:29 +01:00
Danny Ryan 186d4258b6
fix shard offsets 2020-02-28 13:20:37 -06: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
Danny Ryan 9718d206a7
fix attester slahsing test 2020-02-26 11:20:19 -06:00
Danny Ryan 721f605a91
Merge branch 'dev' into phase1-tests 2020-02-22 12:10:35 -06:00
Danny Ryan 4c1fc9bffa
work through phase 1 tests 2020-02-22 12:06:31 -06:00
Danny Ryan 97fa3741af
working through test issues 2020-02-22 09:30:33 -06:00
Danny Ryan ceb6633eb9
working through phase 1 attestation testing 2020-02-22 09:24:14 -06:00
Ben Edgington 934c037a8a
Correct the duration of HISTORICAL_ROOTS_LIMIT
The duration of HISTORICAL_ROOTS_LIMIT is:
    SECONDS_PER_SLOT * SLOTS_PER_HISTORICAL_ROOT * HISTORICAL_ROOTS_LIMIT
which is
    12s * 2^13 * 2^24 = 1.65e12s = 52,262 years
2020-02-22 09:22:52 -06:00
Danny Ryan 3bb8e0d962
cleanup attester slashing conditon code snippet
Co-Authored-By: Diederik Loerakker <proto@protolambda.com>
2020-02-22 09:22:52 -06:00
Danny Ryan f671b86776
add DoS prevention validation conditions to voluntary_exit, proposer_slashing, and attester_slashing gossipsub channels 2020-02-22 09:22:52 -06:00
Danny Ryan 7329cc0933
pr feedback
Co-Authored-By: Diederik Loerakker <proto@protolambda.com>
2020-02-22 09:22:51 -06:00
Danny Ryan 3404f1e078
add lower bound condition on block gossip 2020-02-22 09:22:51 -06:00
Danny Ryan 581257e269
reorder gossip conditions to put cheap checks before signature verifications 2020-02-22 09:22:51 -06:00
Danny Ryan f7181adece
reverse params in get_aggregate_and_proof to match ssz type 2020-02-22 09:22:51 -06:00
Danny Ryan d2e08c0cdf
subnet validation PR feedback 2020-02-22 09:22:51 -06:00
Danny Ryan dde69cb8e2
add explicit instrucutions for construction of signed_aggregate_and_proof. add DOMAIN_SELECTION_PROOF and DOMAIN_AGGREGATE_AND_PROOF 2020-02-22 09:22:51 -06:00