Commit Graph

3312 Commits

Author SHA1 Message Date
vbuterin b6680d28bb
Update specs/core/1_new_shards.md
Co-Authored-By: Danny Ryan <dannyjryan@gmail.com>
2019-12-05 13:29:48 -07:00
vbuterin e66b4e06ef
Update specs/core/1_new_shards.md
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-12-05 13:29:48 -07:00
vbuterin 8cb404d926
Update specs/core/1_new_shards.md
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-12-05 13:29:48 -07:00
vbuterin ff3bd725a3
Update specs/core/1_new_shards.md
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-12-05 13:29:48 -07:00
vbuterin 2ea8eb9cc3
Update specs/core/1_new_shards.md
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-12-05 13:29:48 -07:00
vbuterin c9cc110ab1
Update specs/core/1_new_shards.md
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-12-05 13:29:47 -07:00
vbuterin a749dd9a77
Update specs/core/1_new_shards.md
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-12-05 13:29:47 -07:00
vbuterin 822ceade58
Update specs/core/1_new_shards.md
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-12-05 13:29:47 -07:00
vbuterin 0ddc0ba527
Update specs/core/1_new_shards.md
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-12-05 13:29:47 -07:00
vbuterin bf13757722
Update specs/core/1_new_shards.md
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-12-05 13:29:47 -07:00
vbuterin 793c8616cd
Update specs/core/1_new_shards.md
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-12-05 13:29:47 -07:00
vbuterin 41be60ee6e
Update specs/core/1_new_shards.md 2019-12-05 13:29:46 -07:00
vbuterin 8a6bd201f9
Update specs/core/1_new_shards.md
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-12-05 13:29:46 -07:00
vbuterin 4d1e9e15c6
Update specs/core/1_new_shards.md
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-12-05 13:29:46 -07:00
vbuterin 9810a3d260
Update specs/core/1_new_shards.md
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-12-05 13:29:46 -07:00
vbuterin 9d3a230974
Update specs/core/1_new_shards.md
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-12-05 13:29:46 -07:00
vbuterin bcd06d88ef
Update specs/core/1_new_shards.md
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-12-05 13:29:46 -07:00
vbuterin d59e87f876
Update specs/core/1_new_shards.md
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-12-05 13:29:45 -07:00
vbuterin d3f9bfe68d
Update specs/core/1_new_shards.md
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-12-05 13:29:45 -07:00
vbuterin 213032e51f
Update specs/core/1_new_shards.md
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-12-05 13:29:45 -07:00
vbuterin 462d05d6d8
Update specs/core/1_new_shards.md
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-12-05 13:29:45 -07:00
Hsiao-Wei Wang 1fdd0332cc
Update ToC 2019-12-05 13:29:45 -07:00
Vitalik Buterin 03ab1d5785
A few cleanups 2019-12-05 13:29:45 -07:00
Vitalik Buterin d723431616
Fixed pending attestation handling and added empty transition check 2019-12-05 13:29:44 -07:00
Vitalik Buterin 393436992d
Restructured shard blocks 2019-12-05 13:29:44 -07:00
Vitalik Buterin 6b1bc1e02f
Reformed attestations 2019-12-05 13:29:44 -07:00
Vitalik Buterin b36820a26c
Changes to make Danny happy 2019-12-05 13:29:44 -07:00
Vitalik Buterin bf886d698b
Small edits 2019-12-05 13:29:44 -07:00
Vitalik Buterin bf0a2b7df9
Renaming 2019-12-05 13:29:43 -07:00
Vitalik Buterin 08fc024fbd
Changed fraud proof details 2019-12-05 13:29:43 -07:00
Hsiao-Wei Wang 0ff5985c01
Fix markdown and ToC 2019-12-05 13:29:43 -07:00
Vitalik Buterin 539c681921
Updates to add new proposals 2019-12-05 13:29:43 -07:00
Vitalik Buterin bb2835ee1b
Shard slots to 128 bytes 2019-12-05 13:29:43 -07:00
Vitalik Buterin 7fc2830730
Some updates 2019-12-05 13:29:43 -07:00
Vitalik Buterin e5544d055b
Made trace a commitment separate from state roots 2019-12-05 13:29:42 -07:00
Vitalik Buterin 9abfc6276a
Cleaned up state transition and honest committee member 2019-12-05 13:29:42 -07:00
Vitalik Buterin b792fe696a
formatting 2019-12-05 13:29:42 -07:00
Vitalik Buterin fe60b4deba
Variable max attestation length 2019-12-05 13:29:42 -07:00
Vitalik Buterin 26df98bf61
MAX_CATCHUP -> MAX_CATCHUP_RATIO 2019-12-05 13:29:42 -07:00
Vitalik Buterin 25db268bfb
Added a few more things 2019-12-05 13:29:42 -07:00
Vitalik Buterin f6be6b2b8a
Added a few things 2019-12-05 13:29:41 -07:00
Vitalik Buterin 88aeba09f6
Added new shards 2019-12-05 13:29:41 -07:00
Danny Ryan b4b5cc9115
Merge branch 'v09x' into dev 2019-12-05 13:29:04 -07:00
Danny Ryan 7af6945f53
Merge pull request #1491 from ethereum/rm-signing-root
rm signing root (fixes #1487)
2019-12-05 13:16:39 -07:00
Danny Ryan dfcd6f6402
add tests for block filter in get_head 2019-12-04 16:53:55 -07:00
Danny Ryan e9dc2a1f03
Merge pull request #1492 from terencechain/patch-91
Remove duplicated attestation target root check
2019-12-04 11:49:08 -07:00
protolambda afb9a1d7c0
move signed envelopes 2019-12-03 21:34:48 +01:00
protolambda 103a66b2af
remove signing_root: see issue #1487 2019-12-03 21:10:19 +01:00
terence tsao 0f4faf11ab
Update 0_fork-choice.md 2019-12-03 17:25:56 +08:00
terence tsao 1113953a59
Update p2p-interface.md 2019-12-03 17:17:17 +08:00
Danny Ryan 2275cdfeb8
fix child filter in get_head 2019-11-27 13:26:44 -07:00
Danny Ryan 5aa9f96558
Update specs/core/0_fork-choice.md
Co-Authored-By: Diederik Loerakker <proto@protolambda.com>
2019-11-27 13:11:30 -07:00
Danny Ryan 8021f34c06
fix existing fork choce tests with new filter 2019-11-25 15:44:22 -07:00
Danny Ryan 9004bcf1a5
WIP filter block tree 2019-11-25 15:06:33 -07:00
Danny Ryan 23abc11093
handle v0.9.2-dev conflict 2019-11-21 15:18:17 -07:00
Danny Ryan 3e96b43894
Merge pull request #1467 from ethereum/reduce-genesis-count
reduce genesis validator count for mainnet config
2019-11-18 13:30:04 -07:00
Danny Ryan 6ef79ac2a8
Merge pull request #1480 from ethereum/ssz-bytes-naming
Rename BytesN to ByteVector, rename Bytes to ByteList
2019-11-18 13:28:32 -07:00
Hsiao-Wei Wang 8fed220736
Update `AggregateAndProof` and rename `slot_signature` to `get_slot_signature`
1. Reorder the fields to fit the container name
2. Rename `AggregateAndProof.index: ValidatorIndex` to `AggregateAndProof.aggregator_index: ValidatorIndex`
    - Since we also have similar naming style like
`ProposerSlashing.proposer_index` or `VoluntaryExit.validator_index`
2019-11-18 21:35:12 +08:00
Diederik Loerakker b15669b7a5 Backport master (v0.9.1) to dev (#1482)
* p2p-interface: clarify that signing_root is used for block requests

* hash cleanups

* one more hash tree root gone for blocks - block hashes are always
signing roots!
* use simple serialize data types consistently

* Describe which finalized root/epoch to use

* remove custody_bits from attestation

* remove AttestationDataAndCustodyBit

* Specify inclusive range for genesis deposits

* add initial fork choice bounce prevention and tests

* PR feedback

* further test bounce attack

* wipe queued justified after epoch transition

* remove extra var

* minor fmt

* only allow attestatiosn to be considered from current and previous epoch

* use best_justified_checkpoint instead of queued_justified_checkpoints

* use helper for slots since epoch start

* be explicit about use of genesis epoch for previous epoch in fork choice on_block

* pr feedback

* add note aboutgenesis attestations

* cleanup get_eth1_vote

* make eth1_follow_distance clearer

* Update the expected proposer period

Since `SECONDS_PER_SLOT` is now `12`

* minor fix to comment in mainnet config

* Update 0_beacon-chain.md
2019-11-15 16:27:04 -05:00
protolambda 2c32274870
rename BytesN to ByteVector, rename Bytes to ByteList 2019-11-15 16:56:52 +01:00
Danny Ryan 89fa914e73
Merge pull request #1478 from ethereum/hash-type-fix
Avoid Hash <> hash() type and func confusion
2019-11-12 16:41:21 -07:00
Danny Ryan 1aad31df59
Merge pull request #1477 from ethereum/forkchoice-future-blocks
Forkchoice mods
2019-11-12 16:40:32 -07:00
Danny Ryan 117fb12888
add scheduling note to on_attestation 2019-11-12 16:24:33 -07:00
protolambda c061abdd75
Avoid Hash <> hash() type and func confusion, intro Root and change to non-roots to Bytes32 2019-11-12 21:29:58 +01:00
Danny Ryan e3a67fe52c
ensure not all validators switch at once 2019-11-12 12:00:30 -07:00
Danny Ryan 74253bdbaf
attestations for future blocks not valid in fork choice 2019-11-12 11:29:46 -07:00
Danny Ryan 29b073bcca
add random subnet subscriptions for phase 0 stability 2019-11-11 14:46:30 -07:00
Danny Ryan 32e6623915
clarify topic subscriptions for attestations 2019-11-11 14:27:46 -07:00
terence tsao 931ad45c53
Update 0_beacon-chain.md 2019-11-08 11:45:11 -07:00
Hsiao-Wei Wang a029db3410
Update the expected proposer period
Since `SECONDS_PER_SLOT` is now `12`
2019-11-08 19:05:14 +08:00
Diederik Loerakker f0999573f7
Merge pull request #1469 from ethereum/fix-eth1-distance
Clarify `previous_eth1_distance`
2019-11-07 20:37:36 +01:00
Danny Ryan c84dce7b32
make eth1_follow_distance clearer 2019-11-07 12:32:02 -07:00
Danny Ryan 5159c69632
cleanup get_eth1_vote 2019-11-07 12:15:56 -07:00
Danny Ryan e7f71886b0
Merge pull request #1466 from ethereum/decoy-flip-flop
Decoy flip flop resistance
2019-11-08 03:10:41 +08:00
Danny Ryan 9b21c0db93
add note aboutgenesis attestations 2019-11-07 12:06:23 -07:00
Danny Ryan f331b55b9e
Merge pull request #1465 from ethereum/bounce-attack
Bounce attack resistance
2019-11-08 02:56:46 +08:00
Danny Ryan bf78a71152
pr feedback 2019-11-07 11:51:53 -07:00
Danny Ryan 9ddae15e2e
reduce genesis validator count for mainnet config 2019-11-06 20:32:25 -07:00
Danny Ryan a28c027943
be explicit about use of genesis epoch for previous epoch in fork choice on_block 2019-11-06 17:26:06 -07:00
Danny Ryan e1d2823810
Merge branch 'bounce-attack' into decoy-flip-flop 2019-11-06 17:20:59 -07:00
Danny Ryan 09fd49ce89
use helper for slots since epoch start 2019-11-06 17:20:21 -07:00
Danny Ryan fc40bff2a8
use best_justified_checkpoint instead of queued_justified_checkpoints 2019-11-06 17:10:32 -07:00
Danny Ryan 4f42f63e4e
only allow attestatiosn to be considered from current and previous epoch 2019-11-05 13:01:58 -07:00
Danny Ryan 2616210637
minor fmt 2019-11-05 12:51:47 -07:00
Danny Ryan ba6637b4d9
remove extra var 2019-11-05 11:42:40 -07:00
Danny Ryan 79911a93b4
Merge pull request #1462 from ethereum/remove-custody
Remove custody_bits and AttestationDataAndCustodyBit
2019-11-06 02:03:50 +08:00
Danny Ryan e20e11e0b5
wipe queued justified after epoch transition 2019-11-05 11:02:58 -07:00
Danny Ryan 97d7cf5190
further test bounce attack 2019-11-05 10:58:45 -07:00
Danny Ryan 40a21dc3ad
PR feedback 2019-11-05 09:08:37 -07:00
Danny Ryan 405e218598
add initial fork choice bounce prevention and tests 2019-11-05 08:55:34 -07:00
Paul Hauner 1c99ab2c96
Specify inclusive range for genesis deposits 2019-11-04 10:55:14 +11:00
Danny Ryan 600265a311
remove AttestationDataAndCustodyBit 2019-11-01 21:12:32 -06:00
Danny Ryan 65b615a4d4
remove custody_bits from attestation 2019-11-01 21:02:53 -06:00
Jacek Sieka af5238ad9a
Describe which finalized root/epoch to use 2019-11-01 08:42:10 +01:00
terence tsao 2159df2d12
Update 0_beacon-chain.md 2019-10-31 21:31:08 -07:00
Jacek Sieka 1dc09e8567
hash cleanups
* one more hash tree root gone for blocks - block hashes are always
signing roots!
* use simple serialize data types consistently
2019-10-31 17:32:08 +01:00
Nathaniel Jensen 5dd0015912
Update link to current bls standard draft. 2019-10-30 10:29:42 +11:00
Jacek Sieka 351dcd4bb8
p2p-interface: clarify that signing_root is used for block requests 2019-10-29 08:49:03 +01:00
Danny Ryan 60a469b9c7
Merge pull request #1440 from ethereum/naive-aggregation
Naive aggregation strategy
2019-10-28 17:42:13 +08:00
Danny Ryan 09de5957d2
Merge pull request #1454 from ethereum/forkchoice-tests-fixed
Forkchoice tests fixed
2019-10-28 17:21:15 +08:00
Danny Ryan 04c20aeb28
add expicit ranges for valid attesation propogation range 2019-10-28 18:19:17 +09:00
Danny Ryan 3bb6aec3ab
Clarify committee_index subnets by defining and using "subnet" var
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-10-28 17:10:48 +08:00
Danny Ryan 43132a3082
[reopen] Eth2 shorthand standardized (#1452)
* Update README.md

* Update README.md

* Update p2p-interface.md

* Update simple-serialize.md

* Update README.md

* Update initialization.md

* Update README.md

* Update 0_beacon-chain-validator.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md
2019-10-28 15:53:10 +08:00
terence tsao 34ba645f7e
Update specs/core/0_fork-choice.md
Co-Authored-By: Danny Ryan <dannyjryan@gmail.com>
2019-10-28 08:48:22 +01:00
terence tsao bb5a721707
Update 0_fork-choice.md 2019-10-28 08:48:15 +01:00
Diederik Loerakker a6cecaf212
Merge pull request #1401 from ethereum/conversion-comments
add explicit comments for int_to_bytes and bytes_to_int
2019-10-28 08:33:34 +01:00
Diederik Loerakker 257fcd9c79
typo 2019-10-28 08:29:01 +01:00
Danny Ryan 913a231a16
Merge pull request #1410 from wemeetagain/patch-3
sync protocol: clarify committee type
2019-10-28 15:26:31 +08:00
Danny Ryan 6fc1feaa2a
rearrange some of the gossip info in response to hwwhww review 2019-10-28 16:15:26 +09:00
Danny Ryan e8fc84eadc
Update specs/networking/p2p-interface.md
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-10-28 15:00:55 +08:00
Danny Ryan 795105a1f4
Merge branch 'dev' into naive-aggregation 2019-10-28 15:58:49 +09:00
Danny Ryan 6570340e04
Merge branch 'master' into master-to-dev 2019-10-28 15:27:41 +09:00
Danny Ryan c547c5291d
Merge pull request #1447 from ethereum/early-committee-bias
Implement solution for #1446, based on suggested use of eth1 hash
2019-10-28 14:10:50 +08:00
Danny Ryan 810266fbf4
Merge pull request #1443 from ethereum/remove-transfers
Remove transfers from phase 0
2019-10-28 14:10:26 +08:00
Danny Ryan 364781b934
Merge pull request #1428 from ethereum/phase0-simplify
Remove Shards/Crosslinks from Phase 0
2019-10-28 14:07:39 +08:00
Hsiao-Wei Wang 2d59ca6d57
Update ToC 2019-10-28 12:43:29 +08:00
Justin 09339f2f17
Update 0_beacon-chain.md 2019-10-27 18:18:48 +00:00
protolambda e6e203ce85
randaomixes init now with eth1 hash repeat 2019-10-27 16:20:35 +01:00
Danny Ryan d6563bce2d
minor edits to p2p faq 2019-10-27 12:51:46 +09:00
Danny Ryan 6a62cfd3f5
gossip cleanup 2019-10-27 12:41:43 +09:00
Danny Ryan a700e7a865
fmt 2019-10-27 12:32:28 +09:00
Danny Ryan e005bb04c5
add unaggregated attestation validations 2019-10-27 12:29:11 +09:00
Danny Ryan db8347645e
add validation condition to aggregate gossip to prevent forwarding duplicate aggregates along 2019-10-27 12:18:13 +09:00
protolambda 2186c45f84
implement (unpolished) solution for #1446, based on suggested use of eth1 hash 2019-10-25 13:35:21 +02:00
Diederik Loerakker f1bf0bf85b
Merge pull request #1381 from ethereum/dankrad-patch-11
SSZ clarifications on deserialization
2019-10-25 18:09:37 +08:00
protolambda e984d10a0c
fix typo, and fix bitlist end-bit description 2019-10-25 12:02:12 +02:00
Danny Ryan c2cebef649
Update specs/validator/0_beacon-chain-validator.md
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-10-25 17:13:00 +08:00
Danny Ryan 70c2063cfa
PR feedback 2019-10-24 21:49:07 +09:00
Hsiao-Wei Wang c9c4a6c823
Merge pull request #1421 from mcdee/deposit
Sync validator deposit info
2019-10-24 16:10:00 +08:00
Danny Ryan 69730cc267
remove transfers entirely from phase 0 2019-10-24 16:12:10 +09:00
Danny Ryan 7804f94279
explain why aggregate_and_proof for aggregate gossip in p2p faq 2019-10-24 10:23:37 +09:00
Danny Ryan 1cda8c8a8b
aggregation cleanups 2019-10-24 10:10:29 +09:00
Diederik Loerakker 9fbd700980
Merge pull request #1441 from sgryphon/dev
Add details of my C# SSZ project
2019-10-24 01:36:20 +08:00
Sly Gryphon 2be850c428 Add details for an SSZ project I have just published a first version (basic serialization & Merkleization only) of 2019-10-23 20:53:38 +10:00
Diederik Loerakker e5f7fafb2c
Merge pull request #1412 from ethereum/vbuterin-patch-1
Refactor Merkle proof verification
2019-10-23 17:32:26 +08:00
Diederik Loerakker ce1ceee9af
Fix argument names, PR suggestion from @wemeetagain
Co-Authored-By: Cayman <caymannava@gmail.com>
2019-10-23 17:23:46 +08:00
Diederik Loerakker d8bf5c203a
Merge pull request #1423 from wemeetagain/patch-4
merkle proofs: Fix get_helper_indices
2019-10-23 17:17:34 +08:00
Danny Ryan cf1d855be6
lint 2019-10-23 17:42:53 +09:00
Danny Ryan 7fcb60795b
lint 2019-10-23 17:29:53 +09:00
Danny Ryan a9c2112571
add bulk of naive aggregation strategy 2019-10-23 17:13:01 +09:00
Hsiao-Wei Wang 13c3d9c6e9
Update ToCs 2019-10-23 12:10:43 +08:00
Danny Ryan f63c122ddc
Merge branch 'phase0-simplify' into naive-aggregation 2019-10-23 09:43:30 +09:00
Danny Ryan f809b21241
minor pr review 2019-10-23 09:37:15 +09:00
Danny Ryan bc8ff33a37
working through attestation aggregation 2019-10-22 15:49:50 +08:00
Danny Ryan a11b01296b
update constants for phase 0 simplification 2019-10-20 12:53:03 +08:00
Cayman a9961d4ce4
Simplify get_helper_indices 2019-10-18 03:38:06 -05:00
Danny Ryan d5a2535f98
minor comments resolved from hww 2019-10-18 12:18:51 +09:00
Danny Ryan 58c28349de
proto pr feedback 2019-10-18 12:10:36 +09:00
Danny Ryan fbcc2a4870
fix comment re: proto 2019-10-18 12:05:43 +09:00
Danny Ryan 437a65d3e1
cleanup wrt Justin's comments 2019-10-17 17:47:51 +09:00
vbuterin 8de3b83157
Fix delay-based attestation inclusion reward
Modify the delay-based reward function from the current `r = (65-d)/64` to `r = 1/d`.

Rationale is that in the normal case delay is close to 1, so we want a larger incentive to get included more quickly to encourage stability of the fork choice. Particularly, in the status quo if you know that you will be a proposer <4 slots in the future, you can maximize earnings by delaying inclusion of your attestation until you can include it yourself and get the proposer reward; this adjustment fixes this in the normal case.
2019-10-17 10:39:21 +08:00
Danny Ryan 7af2c23270
remove refs to crosslinks 2019-10-17 10:47:39 +09:00
Danny Ryan c239ce0b5e
crosslink committee -> beacon committee 2019-10-17 10:45:07 +09:00
Danny Ryan 219084a08a
add CommitteeIndex type 2019-10-16 18:53:36 +09:00
Danny Ryan bd1c71b82e
simplify index 2019-10-16 18:47:19 +09:00
Danny Ryan 6208e74d3f
get crosslink committees by slot 2019-10-13 21:52:58 +09:00
Danny Ryan d8431f8476
add start index back in 2019-10-13 13:53:43 +09:00
Danny Ryan c392db3b9b
fix max epochs var 2019-10-12 14:44:53 +09:00
Danny Ryan 1fbf7f8e0d
fix config files 2019-10-12 13:54:51 +09:00
Danny Ryan 5ccac7c206
remove get_committee_count 2019-10-12 13:36:05 +09:00
Danny Ryan b3a0a03f85
remove some legacy code 2019-10-12 13:32:46 +09:00
Danny Ryan d98cabf7e7
fix get crosslink committee and finalitytests 2019-10-12 13:06:52 +09:00
Danny Ryan b3b9b434b4
working through phase 0 tests after crosslink/shard removal 2019-10-12 12:16:13 +09:00
Danny Ryan dfdf3ab5cf
initial removal and cleanup of shard/crosslink from phase 0 2019-10-12 11:48:34 +09:00
Danny Ryan 3c3ae9ac02
enforce beacon state at epoch boundary slot 2019-10-05 07:22:20 +09:00
Danny Ryan dc4869349c
remove explicitly handling empty attestation 2019-10-05 06:56:54 +09:00
Cayman 56fd91b9f9
merkle proofs: Fix get_helper_indices 2019-10-01 11:23:03 -05:00
Danny Ryan a5fb9408ae
make beacon state for shard sate transition from current shard epoch 2019-09-30 13:15:03 +09:00
Danny Ryan 75fd6191ca
Merge branch 'JustinDrake-patch-23' into shard-chain-test 2019-09-30 11:44:13 +09:00
Danny Ryan b259d3518b
move assert to get_beacon_proposer_index 2019-09-30 11:34:28 +09:00
Jim McDonald b050531468 Revert to bytes32 2019-09-28 17:01:29 +01:00
Jim McDonald 81b2566cd8 Update validator doc to match recent changes 2019-09-28 13:18:06 +01:00
Jim McDonald e2230d106f Fix array formatting 2019-09-28 13:17:22 +01:00
Danny Ryan b892d46f26
working through shard chain tests 2019-09-27 13:02:16 +09:00
Danny Ryan 86ed3937dc
fix a couple of minor shard chain bugs 2019-09-27 10:34:19 +09:00
Danny Ryan 131bf282be
Merge branch 'JustinDrake-patch-23' into shard-chain-test 2019-09-27 09:43:30 +09:00
Danny Ryan 9ce7a8e591
working through lint and format on shard chains 2019-09-27 09:41:12 +09:00
Justin Drake d4f48117d3 Rename ShardCheckpoint, double header size, verify proposer not slashed 2019-09-26 19:32:50 +01:00
Justin Drake fd759a2cca Remove flat containers and revert back to uint64 2019-09-25 21:51:35 +01:00
Danny Ryan 44bdf01948
Merge branch 'dev' into JustinDrake-patch-23 2019-09-25 14:17:26 -06:00
Justin 25efbe7458
Rename seed to epoch_seed as per Danny 2019-09-23 20:58:29 +01:00
Justin Drake e7db58cb7e
Rename ACTIVATION_EXIT_DELAY to MAX_SEED_LOOKAHEAD for phase 1 2019-09-23 12:48:41 -06:00
Justin a183125595
cleanups to get_seed
1) Put `domain_type` and `epoch` upfront. This pattern can be reused for signature domains.
2) Change `int_to_bytes(epoch, length=32)` to `int_to_bytes(epoch, length=8)` to match `uint64` length.
2019-09-23 12:48:41 -06:00
Justin Drake 47a818c705
Add domain_type to get_seed 2019-09-23 12:48:36 -06:00
Danny Ryan 114ffe3d6d
Merge pull request #1413 from ethereum/proposer-fix
Improve beacon proposer selection logic
2019-09-23 13:45:43 -05:00
Danny Ryan 2ec363d614
typo 2019-09-23 12:42:29 -06:00
Justin 2e53899784
typo 2019-09-22 14:44:51 -05:00
vbuterin 50209ea806
Refactor Merkle proof verification
Goal: support calculating roots of trees modified by setting new leaves
2019-09-22 10:09:10 +03:00
Cayman 51a0d8059d
sync protocol: clarify committee type
Updates at period boundaries occur per period committee, not per persistent committee
2019-09-20 14:37:37 -05:00
Danny Ryan 7a5cdc2a9d
Merge pull request #1407 from GregTheGreek/patch-1
Custody game cleanup
2019-09-16 13:54:51 -06:00
Danny Ryan 834b811222
fix custody_subchunkify return type 2019-09-16 13:26:27 -06:00
Gregory Markou 794a2407a1
Update specs/core/1_custody-game.md
Co-Authored-By: Danny Ryan <dannyjryan@gmail.com>
2019-09-16 11:19:51 -04:00
Danny Ryan 9582814c62
clarify endianness 2019-09-16 09:58:09 -05:00
Danny Ryan 97b3ffcac3
Merge pull request #1391 from terencechain/patch-85
Fix merkle_tree implementation
2019-09-16 08:53:07 -06:00
Danny Ryan 970ae2fad1
update validator doc with modified beacon proposer selection 2019-09-16 09:16:44 -05:00
Danny Ryan 4b2596dbad
ensure BeaconBlocksByRoot requests are lists rather than containers 2019-09-16 08:59:04 -05:00
Gregory Markou 6d9dd04b50
Update 1_custody-game.md 2019-09-15 21:03:50 -04:00
Gregory Markou d66e6ca0b8
Update 1_custody-game.md
Fix table
2019-09-15 17:12:36 -04:00
Age Manning 8bb9354e65
Renames REQ_RESP_MAX_SIZE to MAX_CHUNK_SIZE 2019-09-13 02:20:59 +10:00
Age Manning 9fa720b994
Removes a max chunk count and corrects timeout for chunked responses 2019-09-11 23:23:14 +10:00
Age Manning 4a7d8a4e48
Applies github suggestions 2019-09-11 06:06:22 +10:00
Danny Ryan 3ead898109
p2p spec copy cleanups 2019-09-08 15:31:22 -06:00
Danny Ryan b743deb061
cleanup max size vars 2019-09-08 15:03:25 -06:00
Danny Ryan cc12e29b25
cleanup response_chunk refactor 2019-09-08 14:57:53 -06:00
Age Manning acb86e8817
Apply Danny's suggestions 2019-09-09 05:45:42 +10:00
Age Manning 3a79ad5363
Adds chunked responses to the RPC 2019-09-09 05:38:06 +10:00
Danny Ryan 1f3a5b156f
Merge pull request #1397 from terencechain/patch-87
Remove `unpack_compact_validator` from sync spec
2019-09-08 12:11:56 -06:00
Age Manning 4937fa9b58
Network specification update 2019-09-08 22:55:55 +10:00
Danny Ryan 66eaab72c5
Merge branch 'master' into dev-083 2019-09-08 08:46:28 -04:00
Danny Ryan ea6a3b293c
add explicit comments for int_to_bytes and bytes_to_int 2019-09-07 14:03:32 -04:00
Justin 2a4957c6cc
Update 1_shard-data-chains.md 2019-09-05 20:07:25 +01:00
terence tsao 1e74cf5f0d
Update sync_protocol.md 2019-09-05 06:55:40 -07:00
terence tsao f1065faf9c
Update sync_protocol.md 2019-09-05 06:54:20 -07:00
terence tsao dbcce17769
Update sync_protocol.md 2019-09-04 09:00:59 -07:00
Justin c01d036ed1
Update 1_shard-data-chains.md 2019-09-03 22:49:33 +01:00
Justin 2b60c9cf90
Update 1_shard-data-chains.md 2019-09-03 22:45:13 +01:00
Justin 91e73c1f57
Deduplicate indices 2019-09-03 22:15:52 +01:00
Justin 2eda4c5dbc
Update 1_shard-data-chains.md 2019-09-03 22:09:47 +01:00
Justin 40dc062279
Update 1_shard-data-chains.md 2019-09-03 22:04:59 +01:00
Justin 225c740107
Apply suggestions from code review
Co-Authored-By: terence tsao <terence@prysmaticlabs.com>
2019-09-03 21:56:12 +01:00
Justin a0bbc940ce
Update 1_shard-data-chains.md 2019-09-03 19:27:30 +01:00
Justin c4297ae330
Update 1_shard-data-chains.md 2019-09-03 19:17:19 +01:00
Justin d1fe8f16fd
Deposit contract fixes (#1362) 2019-09-03 18:59:18 +01:00
Justin 3ef24870d6
Changes as per today's discussion
1) Make `ShardBlock` and `ShardState` flat containers (as opposed to plain containers)
2) Make Gwei deltas `int64` (as opposed `uint64`)
3) Make `older_committee_deltas` a `Vector` (as opposed to `List`)
4) Apply size fee on block body only (as opposed to block header and body)
5) Enshrine minimum "extra" block body fee for proposers (reusing `PROPOSER_REWARD_QUOTIENT`)
6) Fix bugs reported by @terencechain and @hwwhww 👍
2019-09-03 18:55:46 +01:00
vbuterin 834edc2dbc
Removed shard from genesis shard block 2019-09-03 13:44:50 +01:00
Danny Ryan 14496978f1
Merge pull request #1323 from ethereum/vbuterin-patch-13
Starting on phase 1 misc beacon changes
2019-09-02 10:02:51 -06:00
terence tsao 84965be251
Update merkle_proofs.md 2019-09-01 11:07:44 -07:00
terence tsao 9a712ead68
Update merkle_proofs.md 2019-09-01 10:24:46 -07:00
Justin 66c3c391d4
Update 1_shard-data-chains.md 2019-08-29 16:36:13 +01:00
Justin d7e628e08f
WIP! 2019-08-28 22:57:24 +01:00
dankrad 5f1cdc4acc
Merge pull request #1384 from ethereum/length-check-fix
Remove bug bitlist length checks in process_attestation
2019-08-28 13:44:44 +01:00
Justin Drake c8c47e3986 Abstract away compute_proposer_index for phase 1 2019-08-28 10:22:34 +01:00
Danny Ryan 78a0e15e9c
explicitly cast to bool 2019-08-27 10:36:25 -06:00
Danny Ryan d0b4dc2b01
remove bad length checks from process attestation; ensure committee count and committee size not equal 2019-08-27 09:16:02 -06:00
Justin 334d6c6bc7
Revamp 1_shard-data-chains.md
WIP!

* Significant simplifications
* A few bug fixes
* Lots of cleanups and reorganising (making it consistent with `0_beacon-chain.md`)
* Likely a few bugs introduced
2019-08-27 14:58:28 +01:00
Hsiao-Wei Wang 979fa38ae8
fix linter error 2019-08-27 20:10:55 +08:00
Hsiao-Wei Wang 17702e6d88
Shard slot -> slot for PHASE_1_FORK_SLOT part2 2019-08-27 20:10:39 +08:00
vbuterin 0f2e814c63
Shard slot -> slot for PHASE_1_FORK_SLOT 2019-08-27 13:19:04 +02:00
vbuterin 0b38ff0fe2
Update specs/core/1_beacon-chain-misc.md
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-08-27 13:17:38 +02:00
vbuterin ab4820ced6
Update specs/core/1_beacon-chain-misc.md
Co-Authored-By: John Adler <adlerjohn@users.noreply.github.com>
2019-08-27 13:13:47 +02:00
Dankrad Feist 4768ec89f6
SSZ clarifications on deserialization 2019-08-27 11:45:17 +01:00
terence tsao 79e34a00e8
Update sync_protocol.md 2019-08-26 17:37:18 -07:00
Danny Ryan ffdc36920e
lint 2019-08-26 08:55:50 -06:00
Danny Ryan 2abb81d4e9
Merge pull request #1366 from ethereum/remove-val-api
remove Val API and add links to outside spec/standards repos
2019-08-26 08:41:56 -06:00
vbuterin f1caa85aaf
Update specs/core/1_beacon-chain-misc.md
Co-Authored-By: John Adler <adlerjohn@users.noreply.github.com>
2019-08-26 10:09:43 +02:00
vbuterin 9b3cb306e3
Update specs/core/1_beacon-chain-misc.md
Co-Authored-By: John Adler <adlerjohn@users.noreply.github.com>
2019-08-26 10:09:13 +02:00
Hsiao-Wei Wang 01af8e6297
Use `get_previous_power_of_two` from merkle proofs spec 2019-08-25 17:19:19 +08:00
Hsiao-Wei Wang 178dd23314
`MINOR_REWARD_QUOTIENT` for rewarding the proposer for including shard receipt proof
Co-Authored-By: vbuterin <v@buterin.com>
2019-08-24 20:26:35 +08:00
vbuterin a509c68c30
Update specs/core/0_beacon-chain.md 2019-08-24 13:55:35 +02:00
vbuterin 7175ac5593
Update specs/core/0_beacon-chain.md 2019-08-24 13:55:18 +02:00
vbuterin fb59160e6a
Persistent -> period, process_shard_receipt: add _proofs 2019-08-24 13:54:48 +02:00
vbuterin b6d854de09
Fix ToC 2019-08-24 13:50:57 +02:00
Danny Ryan 6923bdc46a
remove Optional None from get_generalized_index. instead throw 2019-08-23 14:49:19 -06:00
Danny Ryan a4f86a8b24
Merge branch 'dev' into vbuterin-patch-13 2019-08-23 14:18:00 -06:00
Hsiao-Wei Wang f8d9b0d283
Merge branch 'dev' into roots-removal 2019-08-24 03:10:02 +08:00
Hsiao-Wei Wang 17043891ff
Fix some mypy errors 2019-08-24 03:03:00 +08:00
Hsiao-Wei Wang bcdbf7dfc7
Fix some flake8 errors 2019-08-24 02:44:22 +08:00
Hsiao-Wei Wang 72b9781051
Merge branch 'dev' into vbuterin-patch-13 2019-08-24 02:37:19 +08:00
Danny Ryan 56954ec508
fix adding fields to phase 1 ssz objects 2019-08-23 12:16:57 -06:00
Danny Ryan 1392c931d0
add GeneralizedIndex to custom types 2019-08-23 12:00:01 -06:00
Danny Ryan 3d97160098
Update specs/networking/p2p-interface.md
Co-Authored-By: Diederik Loerakker <proto@protolambda.com>
2019-08-23 18:33:18 +02:00
Danny Ryan 0547d0ce67
add note on local aggregation for interop 2019-08-23 18:33:18 +02:00
Danny Ryan f62aedec31
minor formatting 2019-08-23 18:33:18 +02:00
Age Manning 194f292348
Minor corrections and clarifications to the network specification 2019-08-23 18:33:18 +02:00
JSON dee70df3a9
doc standardization for networking spec (#1338)
* Update p2p-interface.md

* Update p2p-interface.md

* Update p2p-interface.md

* Update specs/networking/p2p-interface.md

Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>

* Update specs/networking/p2p-interface.md

Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>

* Update specs/networking/p2p-interface.md

Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>

* Update specs/networking/p2p-interface.md

Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>

* Update specs/networking/p2p-interface.md

Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>

* Update specs/networking/p2p-interface.md

Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>

* Update specs/networking/p2p-interface.md

Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>

* Update specs/networking/p2p-interface.md

Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>

* Update specs/networking/p2p-interface.md

Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>

* Update specs/networking/p2p-interface.md

Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-08-23 18:33:17 +02:00
Jacek Sieka 94d2368970
discuss length-prefixing pro/con, consider for removal, add link 2019-08-23 18:33:17 +02:00
Jacek Sieka f0ce20b922
cleanups 2019-08-23 18:33:17 +02:00
Jacek Sieka 26ea675f9c
Updates
* constants -> configurations
* constant name updates
* initial validation requirement for attestations
* allow aggregated attestations to be published
* move discv5 down a bit
* additional rationale
2019-08-23 18:33:17 +02:00
Raúl Kripalani d0e1f29beb
apply more editorial suggestions.
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-08-23 18:33:17 +02:00
Raúl Kripalani e147684907
apply editorial suggestions.
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
Co-Authored-By: Preston Van Loon <preston@prysmaticlabs.com>
2019-08-23 18:33:17 +02:00
Raúl Kripalani 26d342e918
fmt. 2019-08-23 18:33:17 +02:00
Raúl Kripalani e81629df63
document doctoc command for posterity. 2019-08-23 18:33:16 +02:00
Raúl Kripalani aa2859299f
gossip domain: clarify why we use plaintext topic names. 2019-08-23 18:33:16 +02:00
Raúl Kripalani 4bae9b4bd1
add table of contents; amend heading level. 2019-08-23 18:33:16 +02:00
Jacek Sieka a8ac4d6c6f
Update libp2p networking spec 2019-08-23 18:33:16 +02:00
Matt Garnett 520c872d21
Improve readability of SSZ type defaults 2019-08-23 18:31:10 +02:00
Diederik Loerakker 5d2f34f882
Merge pull request #1363 from ethereum/executable_merkle_proofs
Executable Merkle proofs
2019-08-23 14:50:12 +02:00
Hsiao-Wei Wang bbaa238742
Fix the definition of `GeneralizedIndex` 2019-08-23 20:20:35 +08:00
vbuterin c1f2e92ad1
Update specs/core/1_beacon-chain-misc.md
Co-Authored-By: Danny Ryan <dannyjryan@gmail.com>
2019-08-23 12:33:25 +02:00
vbuterin 5fcfcac75e Updated light client sync for newer committees (#1316) 2019-08-20 14:33:29 +02:00
Hsiao-Wei Wang d6bbd9bfa1
Add `BaseBytes` to cover `Bytes` and `BytesN` 2019-08-20 19:23:31 +08:00
Hsiao-Wei Wang 6577f159c9
Merge branch 'dev' into executable_merkle_proofs 2019-08-20 19:13:12 +08:00
Hsiao-Wei Wang 663d43d07f
PR feedback, fix type hinting, add missing `Container.get_field_names()` method 2019-08-20 18:55:30 +08:00
Justin Drake df6e531d74 Improve beacon proposer selection logic 2019-08-20 11:37:27 +02:00
Martin Lundfall a843e9aeeb specs/ fix links 2019-08-19 13:47:09 +02:00
Martin Lundfall 35d89e2706 merkle_proofs, simple-serialize, test_gen/README: update ToC 2019-08-19 13:03:51 +02:00
Danny Ryan 83566afa1b
remove APIs and add links to outside spec/stnards repos 2019-08-16 13:35:23 -06:00
Hsiao-Wei Wang bb0b5b09cc
Use `SSZVariableName` instead of `str`, and fix some mypy errors 2019-08-15 19:02:21 +08:00
vbuterin e4a18f6fa4
Made persistent committee roots a vector 2019-08-15 12:51:11 +02:00
Hsiao-Wei Wang 2741a5f33d
Minor fixes 2019-08-15 18:36:48 +08:00
Hsiao-Wei Wang 0f52d460a5
Use the `get_previous_power_of_2` function in ethereum/eth2.0-specs#1323 2019-08-15 16:14:07 +08:00
Hsiao-Wei Wang d88a83d482
Fix most mypy errors 2019-08-15 16:01:53 +08:00
Hsiao-Wei Wang dc93391421
Make flake8 check pass 2019-08-15 15:30:01 +08:00
Diederik Loerakker f9d703c126
Merge pull request #1186 from ethereum/vbuterin-patch-3
Updates to SSZ Merkle proofs phase 0 doc
2019-08-14 23:49:54 +02:00
vbuterin 72103e9deb
Update specs/light_client/merkle_proofs.md
Co-Authored-By: Diederik Loerakker <proto@protolambda.com>
2019-08-14 23:44:26 +02:00
vbuterin c7af2496ef
Update specs/light_client/merkle_proofs.md
Co-Authored-By: Diederik Loerakker <proto@protolambda.com>
2019-08-14 23:44:19 +02:00
vbuterin 8255091e40
ShardReceipt -> ShardReceiptProof 2019-08-14 23:35:26 +02:00
vbuterin fd24308d19
Update specs/core/1_beacon-chain-misc.md 2019-08-14 23:32:10 +02:00
vbuterin d424863fc0
Update specs/core/1_beacon-chain-misc.md 2019-08-14 23:32:01 +02:00
vbuterin 49a008df60
Update specs/core/1_beacon-chain-misc.md 2019-08-14 23:31:55 +02:00
vbuterin 4f92e7fe30
Update specs/core/1_beacon-chain-misc.md 2019-08-14 23:31:48 +02:00
vbuterin 0cf454547b
Update specs/core/1_beacon-chain-misc.md 2019-08-14 23:27:25 +02:00
Danny Ryan 5d8c31cfb1
Update specs/simple-serialize.md 2019-08-14 11:07:03 -06:00
Justin 84558e0c4c
Add summaries and expansions to simple-serialize.md 2019-08-14 15:48:30 +02:00
Danny Ryan 931c51ce7a
Merge pull request #1350 from AgeManning/network-spec-corrections
Minor corrections and clarifications to the network specification
2019-08-13 07:46:27 -06:00
vbuterin f9849ca562
Update specs/core/1_beacon-chain-misc.md
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-08-13 06:14:51 -04:00
vbuterin cb3e0f2146
Update specs/core/1_beacon-chain-misc.md
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-08-13 06:12:51 -04:00
Age Manning 8cf4544ef2
Merge latest dev 2019-08-13 12:41:34 +10:00
Danny Ryan c224af999e
MAX_PERSISTENT_COMMITTEE_SIZE -> TARGET_PERSISTENT_COMMITTEE_SIZE 2019-08-12 19:05:16 -06:00
Age Manning e23b37842e
Update specs/networking/p2p-interface.md
Co-Authored-By: Danny Ryan <dannyjryan@gmail.com>
2019-08-13 08:09:44 +10:00
Hsiao-Wei Wang d84c902bb1
Merge branch 'dev' into v082_backport 2019-08-12 01:47:24 +08:00
Hsiao-Wei Wang 8ac5ea20be
Merge pull request #1353 from mcdee/dev
Add link from DepositData reference to definition
2019-08-12 01:08:04 +08:00
dankrad b345dc0f5f Legendre custody construction (#1305)
* Stab at Legendre custody construction + some tests

* Fix some problems and fix function puller to remove phase0 only lines in phase1

* Pass the linter

* Add headings

* Fix domain for BLS stub

* Change Jacobi to Legendre

* n -> q to clarify notation

* Headings

* Another missing heading

* Custody subchunks via padding

* Fix max_reveal_lateness stuff

* Better names for reveal period functions

* Better parametrization of max_reveal_lateness computation and tests for custody reveal processing

* Fix linter

* Allow challenging for one period after the custody reveal, shorter periods for minimal tests

* Fix lint

* Fix linter error
2019-08-11 13:05:17 -04:00
Hsiao-Wei Wang 40fbcd3d59
Merge branch 'dev' into v082_backport 2019-08-12 00:58:20 +08:00
Hsiao-Wei Wang a0b8e9bbc7
Merge branch 'dev' into vbuterin-patch-13 2019-08-12 00:40:16 +08:00
Hsiao-Wei Wang 01d58eb1c6
Merge branch 'dev' into v082_backport 2019-08-12 00:18:25 +08:00
Hsiao-Wei Wang 4df372deb7
Merge branch 'dev' into vbuterin-patch-17 2019-08-11 23:45:18 +08:00
vbuterin 36a2283052
Shard receipts cannot penalize withdrawn validators 2019-08-11 23:18:48 +08:00
vbuterin 7132778a69
Added compact committee class 2019-08-11 23:18:48 +08:00
Danny Ryan 0fa4491c41
lint 2019-08-11 23:18:48 +08:00
Danny Ryan 6560bc42d2
Apply suggestions from code review
Co-Authored-By: Carl Beekhuizen <carl@ethereum.org>
2019-08-11 23:18:48 +08:00
Danny Ryan 2ae7323183
use codeblock syntax for misc beacon updates 2019-08-11 23:18:48 +08:00
Danny Ryan a273d9e09d
minor rename of beacon chain misc to conform to other files 2019-08-11 23:18:48 +08:00
vbuterin b9fddfe310
Made code work with #1186 2019-08-11 23:18:48 +08:00
vbuterin fab37e747a
Fixed position of Classes 2019-08-11 23:18:47 +08:00
vbuterin 5dad213457
Fixed up ToC 2019-08-11 23:18:47 +08:00
vbuterin 3f20aca65e
Added comments and ToC 2019-08-11 23:18:47 +08:00
vbuterin caadc0d234
Update 1_beacon_chain_misc.md 2019-08-11 23:18:47 +08:00
vbuterin fe9fe8a151
[WIP] add receipt processing to phase 1 beacon chain 2019-08-11 23:18:47 +08:00
vbuterin 3dc7430ae9
Starting on phase 1 misc beacon changes 2019-08-11 23:18:47 +08:00
Hsiao-Wei Wang 5290b62465
Fix + refactor `is_valid_beacon_attestation` and add basic test 2019-08-11 22:24:21 +08:00
Jim McDonald 0e7287eda5 Add link from DepositData reference to definition 2019-08-09 19:09:04 +01:00
JSON 5808ab3ce7 doc standardization for networking spec (#1338)
* Update p2p-interface.md

* Update p2p-interface.md

* Update p2p-interface.md

* Update specs/networking/p2p-interface.md

Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>

* Update specs/networking/p2p-interface.md

Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>

* Update specs/networking/p2p-interface.md

Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>

* Update specs/networking/p2p-interface.md

Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>

* Update specs/networking/p2p-interface.md

Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>

* Update specs/networking/p2p-interface.md

Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>

* Update specs/networking/p2p-interface.md

Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>

* Update specs/networking/p2p-interface.md

Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>

* Update specs/networking/p2p-interface.md

Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>

* Update specs/networking/p2p-interface.md

Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-08-09 13:30:05 +08:00
Age Manning 2a2c9967a8
Minor corrections and clarifications to the network specification 2019-08-09 12:38:48 +10:00
Hsiao-Wei Wang 095cfe6633
Fix build_spec and typo 2019-08-07 19:29:24 +08:00
vbuterin cb92aa91dd
Include state root blocks in crosslink data in non-block slots
Also adds `total_bytes` to state. The goal is to facilitate easier fraud proofs, so that one needs to simply check two adjacent headers in a crosslink and their respective bodies to verify a fraud proof.
2019-08-05 14:37:38 -04:00
Ben Edgington 499e187382 Fix constants table
Tables need header rows in Markdown.
2019-08-05 12:19:32 +01:00
Jacek Sieka d09d56bec8
discuss length-prefixing pro/con, consider for removal, add link 2019-08-04 20:56:41 +02:00
Paul Hauner 32a43acfc1
Clarify length bit for Bitlist merklization 2019-08-04 12:10:32 -06:00
Jacek Sieka cf1d49a1de
cleanups 2019-08-03 09:27:49 +02:00
protolambda 63e2915e12
update SSZ static doc to reflect options in test conditions 2019-08-02 21:43:36 +02:00
Jacek Sieka 514ff5814f
Updates
* constants -> configurations
* constant name updates
* initial validation requirement for attestations
* allow aggregated attestations to be published
* move discv5 down a bit
* additional rationale
2019-08-02 21:12:40 +02:00
vbuterin 5237ac4954
Update specs/light_client/merkle_proofs.md 2019-08-02 09:57:32 -04:00
vbuterin 6138edc5be
log -> log2 2019-08-02 09:49:35 -04:00
vbuterin c8d128aa59
Update specs/light_client/merkle_proofs.md
Co-Authored-By: Diederik Loerakker <proto@protolambda.com>
2019-08-02 09:46:59 -04:00
vbuterin c6cdec8217
Fixed get generalized indices 2019-08-02 09:45:26 -04:00
vbuterin 59307d1380
Update specs/light_client/merkle_proofs.md
Co-Authored-By: Diederik Loerakker <proto@protolambda.com>
2019-08-02 09:43:42 -04:00
vbuterin 845daf5b1f
Update specs/light_client/merkle_proofs.md
Co-Authored-By: Diederik Loerakker <proto@protolambda.com>
2019-08-02 09:43:24 -04:00
vbuterin 0a874528a8
Update specs/light_client/merkle_proofs.md
Co-Authored-By: Danny Ryan <dannyjryan@gmail.com>
2019-08-02 09:43:03 -04:00
vbuterin ddd43ad99d
<= becomes < 2019-08-02 09:40:49 -04:00
vbuterin c29d85aafb
Update specs/core/1_shard-data-chains.md
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-08-02 09:40:26 -04:00
Raúl Kripalani f3c11852d7
apply more editorial suggestions.
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-08-02 12:38:59 +01:00
Raúl Kripalani 5248bb6a15
apply editorial suggestions.
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
Co-Authored-By: Preston Van Loon <preston@prysmaticlabs.com>
2019-08-02 12:35:50 +01:00
vbuterin 2e7c8fa529
Update specs/light_client/merkle_proofs.md 2019-08-01 18:12:35 -04:00
vbuterin e93e7a3f1a
Update specs/light_client/merkle_proofs.md 2019-08-01 18:12:27 -04:00
vbuterin 44bd00164e
Update specs/light_client/merkle_proofs.md
Co-Authored-By: Danny Ryan <dannyjryan@gmail.com>
2019-08-01 18:11:45 -04:00
vbuterin 1b852adef1
Simplified merkle multiproofs 2019-08-01 18:11:30 -04:00
protolambda 8563dbf5c0
make ssz_static output roots to roots.yaml instead of meta 2019-08-01 22:03:40 +02:00
Justin Drake 26641aa699 Remove light client infrastructure (better stuff to be added in phase 1) 2019-08-01 17:03:23 +01:00
Raúl Kripalani 02bb92e714 fmt. 2019-08-01 16:57:04 +01:00
vbuterin 725bdf8223
Update specs/light_client/merkle_proofs.md 2019-08-01 11:40:40 -04:00
Raúl Kripalani 3d4dde412b document doctoc command for posterity. 2019-08-01 16:04:59 +01:00
Raúl Kripalani 1ba03b4c33 gossip domain: clarify why we use plaintext topic names. 2019-08-01 15:56:53 +01:00
vbuterin 55f5f106f1
Updated type checkers for generalized index functions. 2019-08-01 10:56:31 -04:00
Raúl Kripalani c108444c06 add table of contents; amend heading level. 2019-08-01 15:47:11 +01:00
Jacek Sieka e5350c1026
Update libp2p networking spec 2019-08-01 14:47:05 +02:00
vbuterin 446ad3c392
Update specs/light_client/merkle_proofs.md
Co-Authored-By: Danny Ryan <dannyjryan@gmail.com>
2019-08-01 08:08:18 -04:00
vbuterin 92fc0f2b81
Update specs/light_client/merkle_proofs.md
Co-Authored-By: Danny Ryan <dannyjryan@gmail.com>
2019-08-01 08:08:12 -04:00
vbuterin ed3749264b
Update specs/light_client/merkle_proofs.md
Co-Authored-By: Danny Ryan <dannyjryan@gmail.com>
2019-08-01 08:07:57 -04:00
vbuterin cb1a0cbd5f
Update specs/light_client/merkle_proofs.md 2019-08-01 07:57:34 -04:00
Hsiao-Wei Wang 4163053cca
Clean up type hintings, especially `reward` is denominated in uint, and `fee` is in `Gwei` 2019-08-01 16:45:01 +08:00
Hsiao-Wei Wang ce3df38028
Some updates:
1. Clean up configurations
2. Add `HISTORY_ACCUMULATOR_VECTOR`
3. Add `validate_state_root` flag in `shard_state_transition` for testing
4. Rename `history_acc` to `history_accumulator`
2019-08-01 14:17:05 +08:00
Hsiao-Wei Wang 7a4a136d6c
Fix `later_committee` 2019-08-01 13:32:37 +08:00
vbuterin 52705f6fab
Quick fix 2019-07-31 21:28:07 -04:00
vbuterin b57aed2380
A few fixes 2019-07-31 21:26:47 -04:00
vbuterin e08c365e2f
Update specs/core/1_shard-data-chains.md
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-07-31 17:25:55 -04:00
Hsiao-Wei Wang 13d6a31c5c
misc fix 2019-08-01 00:27:31 +08:00
Hsiao-Wei Wang fe2adfa0e2
Fix many typos and lint errors 2019-07-31 18:18:07 +08:00
Hsiao-Wei Wang bc7f849246
Merge branch 'dev' into vbuterin-patch-17 2019-07-31 17:51:26 +08:00
Hsiao-Wei Wang f263b71875
ZERO_HASH -> Hash() 2019-07-31 17:50:55 +08:00
Hsiao-Wei Wang 058e63654d
Fix typo 2019-07-31 17:44:33 +08:00
protolambda 18fc4edfd4
reword to 'also available as <name>.ssz' 2019-07-31 02:16:41 +02:00
Diederik Loerakker d0985dbb5b
Apply suggestions from code review
Co-Authored-By: Danny Ryan <dannyjryan@gmail.com>
2019-07-31 02:05:52 +02:00
Diederik Loerakker 9f0a601a40
Apply suggestions from code review
Co-Authored-By: Danny Ryan <dannyjryan@gmail.com>
2019-07-31 02:02:50 +02:00
protolambda 5f33560b47
Merge branch 'v08x' into testgen-reorg 2019-07-30 22:21:59 +02:00
protolambda 5bdcd269ea
new ssz generic format + typo fix in shuffling format doc 2019-07-30 22:16:43 +02:00
Danny Ryan 6f62146905
Merge branch 'dev' into vbuterin-patch-3 2019-07-30 13:32:58 -06:00
vbuterin cf7d65e8ff
Added generalized index handling functions 2019-07-30 12:15:46 -04:00
protolambda 5ec941e698
more documentation updates 2019-07-30 15:06:15 +02:00
protolambda ff2b533c40
update test format docs with new test structure 2019-07-30 14:09:20 +02:00
protolambda 2ba3cc993d
update test format doc and SSZ-static format docs 2019-07-30 03:40:25 +02:00
Danny Ryan b4577e571b
Merge pull request #1314 from paulhauner/patch-14
Clarify length bit for Bitlist merklization
2019-07-29 17:33:47 -06:00
vbuterin 4b2b5815c9
Add shard state transition function 2019-07-29 16:43:55 -04:00
dankrad ab156f31b1
Merge pull request #1283 from ethereum/n_zero
Clarify the illegal SSZ types
2019-07-29 17:40:38 +01:00
vbuterin de9b4f2d6d
Attestation changes + persistent committee changes (#1294)
* Minimal attestation simplification

* minor fix

* Make the tests pass

* Decrease `PLACEHOLDER`, Use `compute_epoch_of_shard_slot`

* Fix proposer signature name and use get_seed() to calculate current_shuffling_seed

* Fix linter error

* Add the WIP `test_is_valid_shard_block`

* Add `get_shard_block_attester_committee`

* Simplified committee selection

* Added some helpers and simplified

* Update specs/core/1_shard-data-chains.md

* Update 1_shard-data-chains.md

* Simplified switchover epochs, changed block structure, changed crosslink structure

* Update 1_shard-data-chains.md

* Moved balance dependency to proposer selection

* Update specs/core/1_shard-data-chains.md

Co-Authored-By: Danny Ryan <dannyjryan@gmail.com>

* Update specs/core/1_shard-data-chains.md

Co-Authored-By: Danny Ryan <dannyjryan@gmail.com>

* Update specs/core/1_shard-data-chains.md

Co-Authored-By: Danny Ryan <dannyjryan@gmail.com>

* Update specs/core/1_shard-data-chains.md

Co-Authored-By: Danny Ryan <dannyjryan@gmail.com>

* Update specs/core/1_shard-data-chains.md

Co-Authored-By: Danny Ryan <dannyjryan@gmail.com>

* Update specs/core/1_shard-data-chains.md

Co-Authored-By: Danny Ryan <dannyjryan@gmail.com>

* Update specs/core/1_shard-data-chains.md

Co-Authored-By: Danny Ryan <dannyjryan@gmail.com>

* Update specs/core/1_shard-data-chains.md

* Fixed shard header flattening

* Update specs/core/1_shard-data-chains.md

* Minor fixes

* Update specs/core/1_shard-data-chains.md

* Update specs/core/1_shard-data-chains.md

Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>

* cleanup testing and lint

* return none if not active validators in persistent committee

* only allow active validators as shard proposer
2019-07-29 09:47:35 -04:00
Alex Stokes 3c575ceee2
The key in the provided test data is `block` not `block_header`. 2019-07-26 09:15:36 -07:00
protolambda b73625fbf1
update test generation code (work in progress), improve the simplicity of configuration in context of forks, and update docs 2019-07-25 23:13:33 +02:00
Diederik Loerakker d791e9f7e8
Merge pull request #1319 from ethereum/compact_committees-shard
Fix start shard for compact committees root
2019-07-25 21:40:06 +02:00
Diederik Loerakker e20f5eb455
Merge pull request #1317 from ethereum/attestation-bit-lengths
Check attestation bit lengths
2019-07-25 21:17:39 +02:00
Danny Ryan 1ec20f6c1f
do not reset start_shard until after processing compact root 2019-07-25 12:59:38 -06:00
Justin 3f75f1e2c3
Update 0_beacon-chain.md 2019-07-25 19:32:56 +01:00
Danny Ryan bd69dc7e3c
add tests for bit lengths 2019-07-25 12:28:29 -06:00
Hsiao-Wei Wang f336e7ffb3
Rename `is_empty` to `is_zero` 2019-07-25 17:32:27 +08:00
Hsiao-Wei Wang 62138fed34
Update Illegal types 2019-07-25 17:26:27 +08:00
Hsiao-Wei Wang c01995436e
Merge branch 'v08x' into n_zero 2019-07-25 17:25:41 +08:00
Danny Ryan f9f722c505
Merge pull request #1306 from ethereum/old_latest_message
Found by Cem Özer: Ignore older latest messages in attesting balance
2019-07-24 20:03:23 -06:00
Paul Hauner 6f208b6f45
Clarify length bit for Bitlist merklization 2019-07-25 10:18:10 +10:00
Chih Cheng Liang 9c6ba9cd0f
Fix md table 2019-07-24 13:39:04 +08:00
Danny Ryan a90d273fbd
fix minor var typo 2019-07-22 07:19:42 -06:00
Danny Ryan 43a0ca4eeb
check bit lengths 2019-07-22 07:13:07 -06:00
protolambda 01af304403
Found by Cem Özer: Ignore older latest messages in attesting balance sum, instead of assertion error 2019-07-20 02:13:52 +02:00
Diederik Loerakker 866d3f30cc
Merge pull request #1299 from ethereum/master
backport v0.8.1 to dev
2019-07-15 19:34:51 +02:00
protolambda ef659144b4
make zero hash representation clear, fixes #1282 2019-07-15 02:05:16 +02:00
Danny Ryan 77f007cab5
Merge pull request #1267 from ethereum/dankrad-patch-9
Define Bitlist/Bitvector serialization using bytes, not bigints
2019-07-14 17:20:12 -06:00
Danny Ryan 07a0e7b7dd
Merge pull request #1292 from ethereum/correct-merkle
Correct merkleization
2019-07-14 17:19:39 -06:00
protolambda d9fd1d3a2a
improve type wording based on PR 1292 feedback 2019-07-15 00:13:00 +02:00
Danny Ryan 8970b71ca4
ensure min_seed_lookahead functions properly 2019-07-14 16:05:51 -06:00
Danny Ryan 9401383317
Merge pull request #1275 from ethereum/minor-cosmetics
Minor cosmetic fixes
2019-07-14 15:36:24 -06:00
protolambda ac6d019870
bits serialization clear now, directly to bytes 2019-07-12 22:20:07 +02:00
protolambda a8dc9157b8
clean up merkleization text in SSZ spec 2019-07-12 21:15:28 +02:00
Danny Ryan 6dc306700b avoid overflow in slashing penalty calculation (#1286)
Change presentation to avoid uint64 overflow in slashing penalty calculation. (Factor out `EFFECTIVE_BALANCE_INCREMENT` from `validator.effective_balance`.)
2019-07-11 09:53:51 +01:00
Alex Stokes 4def681a4e
Remove another unnecessary list materialization 2019-07-10 17:05:49 -07:00
Alex Stokes b80d6e0495
Avoid unnecessary materialization of list
There is a realization of a `list` in the `get_unslashed_attesting_indices` helper that is unnecessary.

The functionality in this PR is the same so this change should only really be cosmetic wrt the spec.
2019-07-10 17:00:11 -07:00
Danny Ryan 57c0eee197
Merge pull request #1285 from decanus/patch-24
Update 0_beacon-chain.md
2019-07-10 12:34:53 -06:00
Dean Eigenmann 0eadf61631
Update 0_beacon-chain.md 2019-07-10 13:11:34 -04:00
Hsiao-Wei Wang 25ec084cc5
To fit in `MAX_TRANSFERS=0` case 2019-07-10 17:20:50 +08:00
Hsiao-Wei Wang 1644ae6125
Clarify the illegal types 2019-07-10 16:46:59 +08:00
Justin Drake 591f9658d3 Copy edit 2019-07-05 15:04:57 +01:00
Justin Drake c8c810c0e1 Minor fixes 2019-07-05 15:03:37 +01:00
Hsiao-Wei Wang d04d81038a
Merge pull request #1271 from ethereum/hwwhww/ssz-clarify
Cosmetic SSZ spec + add `pack()` in `Bitvector` and `Bitlist` Merkleization
2019-07-05 15:27:40 +08:00
Hsiao-Wei Wang 21535fe901
Fix indent 2019-07-04 21:38:08 +08:00
Hsiao-Wei Wang f37aa1acde
Add `pack()` for `Bitvector` and `Bitlist` Merkleization 2019-07-04 21:35:55 +08:00
Hsiao-Wei Wang d483a3b573
Set default `pad_for=1` 2019-07-04 21:17:21 +08:00
Hsiao-Wei Wang 733653f169
Update some missing type hinting of phase 1 2019-07-04 20:52:58 +08:00
Hsiao-Wei Wang bc39f39d5d
Move `SECONDS_PER_SLOT` back to 0_beacon_chain spec so that the "duration" notes make more sense 2019-07-04 20:41:00 +08:00
Hsiao-Wei Wang b3d65368a1
`PERSISTENT_COMMITTEE_PERIOD` has been defined in phase 0 2019-07-04 20:38:18 +08:00
Danny Ryan 88892028dc
update test formats list in readme 2019-07-02 12:35:26 -06:00
Dean Eigenmann f8fa6f0046
Update 0_beacon-chain.md 2019-07-02 05:43:17 +02:00
Dean Eigenmann ea2f577a8d
Update 0_beacon-chain.md 2019-07-02 05:31:49 +02:00
Danny Ryan 4ea79ee13b
Merge pull request #1257 from ethereum/scale-inclusion-reward
scale inclusion reward properly
2019-06-30 23:08:05 -05:00
Danny Ryan de95f54c4f
Merge pull request #1256 from ethereum/misc_fix
[meta] Fix ToC of SSZ spec and  Use relative inner repo link
2019-06-30 22:49:31 -05:00
Danny Ryan 126591b2f9
scale inclusion reward properly 2019-06-30 22:34:35 -05:00
Hsiao-Wei Wang ac741c096d
Fix ToC of SSZ spec 2019-07-01 11:29:10 +08:00
Danny Ryan 63d4653453
remove unnecessary casting 2019-06-30 22:29:02 -05:00
Danny Ryan 82d3c4f606
Merge pull request #1251 from ethereum/last-minute-cleanups-2
#1244 without "5 slots is a `Slot`"
2019-06-30 22:22:23 -05:00
Hsiao-Wei Wang 93fc81e761
Use relative inner repo link 2019-07-01 11:22:18 +08:00
Danny Ryan 476dbdb153
add time param back tp units 2019-06-30 22:14:53 -05:00
Danny Ryan e1030843d6
Merge branch 'dev' into last-minute-cleanups-2 2019-06-30 22:11:48 -05:00
Danny Ryan 200da4de93
Merge branch 'dev' into v_guide_checkpoint 2019-06-30 22:08:23 -05:00
Danny Ryan 2855e43551
Merge pull request #1236 from ethereum/exec_v_spec
Executable Validator Guide
2019-06-30 22:05:45 -05:00