Danny Ryan
9ea03dce60
add compute_time_at_slot helper in validator doc
2020-01-06 12:16:47 -07:00
Diederik Loerakker
a295451f37
Merge pull request #1555 from ethereum/att-when-ready
...
add eager attestation broadcasting
2020-01-06 01:15:13 +01:00
protolambda
68d93f945c
online countdown fixes
2020-01-06 00:46:36 +01:00
protolambda
9c07e26a4d
length assert not applicable anymore
2020-01-06 00:25:18 +01:00
protolambda
6b872da3ec
light client bitfield is vector now, small size anyway, better separation of committee complexity from data init
2020-01-06 00:17:48 +01:00
protolambda
2f3919c176
bugfix: pass block body to sub processing functions
2020-01-05 23:51:24 +01:00
protolambda
2e6090fcd8
bugfixes for experimental phase0 -> phase1 fork py code
2020-01-05 23:37:42 +01:00
Danny Ryan
50c8727ae7
make genesis delay configurable
2020-01-05 15:29:23 -07:00
Danny Ryan
8515aec7aa
move GENESIS_SLOT/EPOCH to constants as they are not truly configurable
2020-01-05 15:07:41 -07:00
Danny Ryan
5ac0d12205
Merge pull request #1553 from ethereum/eth1-caching
...
`get_eth1_data` uses timestamp instead of block height
2020-01-05 14:44:47 -07:00
Danny Ryan
43d095214c
add note that validator should broadcast attestation immediately when receiving block from expected proposer
2020-01-05 14:10:06 -07:00
protolambda
a8276f683e
don't hardcode shard count, bad example, need upgradeability
2020-01-05 20:20:20 +01:00
protolambda
018927def0
generalize previous-slot function
2020-01-05 20:11:55 +01:00
protolambda
a5faabbf19
Merge branch 'version-pyspec-module' into phase1rebase
2020-01-04 18:28:34 +01:00
Danny Ryan
6dbc02031d
add GENESIS_FORK_VERSION and make associated modifications to support configuration of this variable
2020-01-03 17:48:03 -07:00
Danny Ryan
261b6c0d23
modify get_eth1_data to use timestamp instead of block height
2020-01-03 16:57:04 -07:00
Danny Ryan
7b1a609335
Merge pull request #1549 from status-im/empty-block-response
...
Allow empty lists in streamed responses
2020-01-03 08:14:51 -07:00
Danny Ryan
c9f52d0099
Merge branch 'dev' into phase1rebase
2020-01-03 07:49:23 -07:00
Danny Ryan
0a3cc8a84a
malefactor_key -> malefactor_secret
2020-01-03 07:29:23 -07:00
Carl Beekhuizen
8580ec33f2
'message' -> 'signing_root'
2020-01-03 08:18:34 +01:00
Carl Beekhuizen
51bcb29e28
'DomainWrapper' -> 'SigningRoot'
2020-01-03 07:46:27 +01:00
Carl Beekhuizen
a65d96da04
Merge in dev
2020-01-03 07:35:19 +01:00
Danny Ryan
defeb4e2fd
Merge pull request #1550 from terencechain/patch-94
...
`get_filtered_block_tree` typo
2019-12-31 12:39:52 -07:00
Carl Beekhuizen
e70863ca93
Bytes4 -> DomainType
2019-12-30 06:52:00 +01:00
Carl Beekhuizen
765176ec8c
PySpec SSZ Bytes instantiated from hex
2019-12-27 09:37:26 +01:00
terence tsao
662a986d04
Update 0_fork-choice.md
2019-12-25 09:51:29 -08:00
Jacek Sieka
850d45dae0
Allow empty lists in streamed responses
...
It's possible that block request responses end up not containing any
blocks, so we need a way to encode this.
2019-12-21 17:26:14 +01:00
Diederik Loerakker
b698eff2a7
Merge pull request #1546 from ethereum/master
...
Backport v0.9.4 to dev
2019-12-20 21:25:50 +01:00
Carl Beekhuizen
7af4429011
Make bls a module
2019-12-20 08:41:46 +02:00
Carl Beekhuizen
1e410a1290
Fix typo due to change of interface
...
Co-Authored-By: Danny Ryan <dannyjryan@gmail.com>
2019-12-20 08:12:43 +02:00
Danny Ryan
780dff76d4
Merge pull request #1540 from ChihChengLiang/note-on-requesting-status-again
...
Add a note on requesting STATUS again
2019-12-19 14:10:54 -07:00
Danny Ryan
e34d22e4f8
bad -> abnormal
2019-12-19 14:04:45 -07:00
Carl Beekhuizen
62cbd0e7da
Revert domain 6 -> 5 to prevent confusion
2019-12-19 15:49:10 +02:00
Carl Beekhuizen
42a3dd4ab1
Implement @djrtwo's review suggestions
2019-12-19 15:47:42 +02:00
Chih Cheng Liang
c4b23590d4
Add a note on requesting STATUS again
2019-12-19 18:50:49 +08:00
Danny Ryan
31d90ea799
add p2p faq on why message-id override
2019-12-18 14:46:35 -07:00
Age Manning
8a03e6d291
Add gossipsub message-id specification
2019-12-18 14:20:51 -07:00
Danny Ryan
caffe8d720
update ENR to use attesation subnets instead of shards
2019-12-17 16:27:13 -07:00
Danny Ryan
fa916323f0
add basics for ENR bitfield
2019-12-17 10:59:15 -07:00
Carl Beekhuizen
177ec939f0
Update ToC
2019-12-17 15:40:26 +02:00
Carl Beekhuizen
995c895b9c
New BLS in Phase 1
2019-12-17 15:33:37 +02:00
Carl Beekhuizen
c239ffb78c
Linting fixes
2019-12-17 12:30:46 +02:00
Carl Beekhuizen
80eb721895
Domains are bytes
2019-12-17 12:20:34 +02:00
Carl Beekhuizen
502ee29537
Phase 0 new BLS
2019-12-17 12:04:56 +02:00
Martin Lundfall
a4f8a77c02
Fix spelling errors found by codespell
2019-12-16 13:02:36 +01:00
Justin
412a06608c
Update 0_beacon-chain.md
2019-12-15 11:32:11 +00:00
Justin
48317d8ac0
Minor cosmetic cleanups
...
* remove `BLS_WITHDRAWAL_PREFIX` (it is not used in phase 1, not phase 0)
* avoid inline comment (# Validate state root)
* simplify header inequality check in `process_proposer_slashing` (using uniqueness of BLS signatures)
* add `block = signed_block.message` helper variable for readability
* (typo) clarify that the state transition function consumes a signed block (as opposed to a block)
* generally make comments more consistent
* consistent formatting of container instantiation for `DepositMessage`
* avoid using three lines for `rewards[index] += Gwei(max_attester_reward // attestation.inclusion_delay)`
* introduce `effective_balance` helper variable for readability, and to avoid multi-line statement
* consistent ordering of `MIN_EPOCHS_TO_INACTIVITY_PENALTY` in the time parameters table
* (typo) "Dequeued validators for activation up to churn limit" => Dequeue validators
* "Save current block as the new latest block" => "Cache current block" (for consistent with `process_slot`)
* (typo) "Verify the validator has not yet exited" => "Verify exit has not been initiated"
* Use Pythonic `default=` for `max()` call in `initiate_validator_exit`
2019-12-15 11:10:43 +00:00
Diederik Loerakker
88e954a9c7
Merge pull request #1522 from ethereum/master
...
backport v093 to dev
2019-12-13 18:56:31 +01:00
Danny Ryan
b09c45ffd2
remove last two references to signing root
2019-12-12 12:34:02 -07:00
Danny Ryan
47ecedb81d
update tocs
2019-12-12 09:48:53 -07:00
Danny Ryan
49a8264f5d
Merge branch 'v09x' into toc_ci
2019-12-12 09:47:20 -07:00
Danny Ryan
4a31503ec0
Merge pull request #1516 from ethereum/dup-indices-attest
...
Fixes #1486 : disallow duplicate indices in indexed attestation
2019-12-12 08:32:43 -07:00
Danny Ryan
52a6cf7ba3
Merge pull request #1514 from ethereum/queue-fix-on-finality
...
Fix queue rate and only activate upon finality
2019-12-12 07:44:57 -07:00
Danny Ryan
199933cb26
fix tocs
2019-12-12 06:57:11 -07:00
Danny Ryan
86fb3acd59
minor changes to finality in activation queue
2019-12-12 06:53:56 -07:00
Danny Ryan
19ec01e4e9
add comment about activation queue sort order
...
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-12-12 06:43:37 -07:00
ethers
3d48a3e9eb
Fix dead link to use Internet Archive
2019-12-11 18:17:20 -08:00
protolambda
2405060a7e
Fixes #1486 : disallow duplicate indices in indexed attestation
2019-12-12 01:45:59 +01:00
Danny Ryan
e117b58ae2
add queue eligibility helper
2019-12-11 16:10:18 -07:00
Danny Ryan
6610aeea2f
fix activation queue to finality
2019-12-11 16:00:46 -07:00
Danny Ryan
40025c96dd
Merge pull request #1509 from ethereum/match-slot-target
...
ensure that epoch of attestation slot matches the target epoch
2019-12-10 13:42:32 -07:00
Danny Ryan
66652d0ebd
Merge pull request #1508 from ethereum/better-best
...
ensure the best better-justification is stored in fork choice
2019-12-10 13:41:45 -07:00
Danny Ryan
4636b3e824
Merge pull request #1510 from ethereum/genesis-slot-time
...
explicit use of GENESIS_SLOT in fork choice
2019-12-10 13:41:13 -07:00
Danny Ryan
e4d710590a
add test for queue efficiency
2019-12-10 11:49:26 -07:00
Danny Ryan
d126162ca8
fix activation queue efficiency
2019-12-10 11:25:55 -07:00
Martin Lundfall
ca2b6a0e52
Use consistent header level for TOC generation
2019-12-10 18:29:50 +01:00
Martin Lundfall
12ff64ea1a
Update ToC of specs to consistent use of doctoc
2019-12-10 18:29:40 +01:00
Danny Ryan
2c5c9cb71a
feedback from mikhail
2019-12-10 10:14:49 -07:00
Danny Ryan
8861ca0282
minor typo
...
Co-Authored-By: MrChico <martin.lundfall@protonmail.com>
2019-12-10 10:05:19 -07:00
Danny Ryan
9989f3ea9d
ensure fork choice functions when GENESIS_SLOT != 0
2019-12-09 19:02:16 -07:00
Danny Ryan
432257659e
add asserts to ensure that attestation slot must match the target epoch
2019-12-09 17:31:43 -07:00
Danny Ryan
d4d17ecc4e
ensure the best better-justification is stored in fork choice
2019-12-09 16:47:43 -07:00
Danny Ryan
57aeed1473
Merge branch 'v09x' into filter-fc-justified
2019-12-08 12:17:28 -07:00
Danny Ryan
e53a6daecc
clarify fliter block tree through two line usage
...
Co-Authored-By: Hsiao-Wei Wang <hwwang156@gmail.com>
2019-12-08 11:53:45 -07:00
Danny Ryan
ce40666003
version pyspec module and test on one attesterslashing test
2019-12-05 15:06:32 -07:00
Diederik Loerakker
da17f4b3a8
Merge pull request #1505 from ethereum/v09x
...
backport V09x
2019-12-05 22:15:47 +01:00
Danny Ryan
e31f17f037
modify phase 1 to use new signature (no signing_root) pattern
2019-12-05 13:49:52 -07:00
Danny Ryan
a32b0100ff
rebase fixes
2019-12-05 13:31:42 -07:00
Danny Ryan
4bf5eb86c4
fix issues using indexed attestation and custody bit wrapper
2019-12-05 13:31:42 -07:00
Danny Ryan
f533fef167
add missing attestation validations; cleanup process_attestations and fix minor bugs
2019-12-05 13:31:41 -07:00
Danny Ryan
a1ac0d5a80
fix get_shard_committee
2019-12-05 13:31:41 -07:00
Danny Ryan
ddd7cd2964
divide new and old containers out in phase 1
2019-12-05 13:31:41 -07:00
protolambda
72a9dfc430
fix lint problems
2019-12-05 13:31:41 -07:00
protolambda
1623d40b6d
fix: check malefactor custody key
2019-12-05 13:31:41 -07:00
protolambda
41be2ed3ce
bugfix custody bit index lookup + lint fixes
2019-12-05 13:31:40 -07:00
protolambda
1a1c3773f9
implement custody game revamp for new shard proposal: simplifications and immediate processing, since custody data is bounded
2019-12-05 13:31:40 -07:00
protolambda
e73316c13f
change configs to be loaded in time; reload specs module to make new config presets effective. Also fix more lint and consistency problems.
2019-12-05 13:30:49 -07:00
Danny Ryan
d6bfe5d35c
lint phase 1 (2)
2019-12-05 13:29:52 -07:00
Danny Ryan
9f80a7f703
phase1 lint (1)
2019-12-05 13:29:51 -07:00
Danny Ryan
82c9adce8b
fix phase 1 make build (not lint or tests)
2019-12-05 13:29:51 -07:00
Danny Ryan
79be0345d6
fix call to process_attestation
2019-12-05 13:29:51 -07:00
protolambda
03e956f9c9
validator init adjustments
2019-12-05 13:29:51 -07:00
protolambda
36503f98e4
placeholder: rudimentary phase 0 to phase 1 fork process
2019-12-05 13:29:51 -07:00
protolambda
cc0aac3aae
typo
2019-12-05 13:29:50 -07:00
protolambda
74d6021507
PR comment fixes
2019-12-05 13:29:50 -07:00
protolambda
589d5a4f9a
Add notes on custody game spec funcs
2019-12-05 13:29:50 -07:00
protolambda
465f6cb7f0
update readme spec links
2019-12-05 13:29:50 -07:00
protolambda
edef2fd8ae
more refactoring: more immediate custody game, general phase1 beacon chain changes
2019-12-05 13:29:50 -07:00
protolambda
7d2341b40d
Note: is_valid_indexed_attestation is overriden
2019-12-05 13:29:49 -07:00
protolambda
a33e01dab2
Start making phase1 work in pyspec again
2019-12-05 13:29:49 -07:00
Vitalik Buterin
ef936b94fe
Added get_shard_proposer_index
2019-12-05 13:29:49 -07:00
Vitalik Buterin
4d6dcd15ba
Some fixes
2019-12-05 13:29:49 -07:00
Vitalik Buterin
7b4a6e8307
Simplified gasprice update
2019-12-05 13:29:49 -07:00
Vitalik Buterin
8f34a0788d
Some initial changes
2019-12-05 13:29:49 -07:00
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