Danny Ryan
cc9a4cdc46
add base sanity light client tests
2020-12-16 17:14:42 -07:00
Hsiao-Wei Wang
e63c96416a
Add a FIXME comment.
2020-12-16 15:10:54 +08:00
Hsiao-Wei Wang
d01a4ad823
Fix depth calculation...again(!) and add unittests
2020-12-16 15:01:22 +08:00
Hsiao-Wei Wang
cf6933ac45
Fix depth calculation and add `get_subtree_index` helper
2020-12-15 13:24:53 +08:00
Hsiao-Wei Wang
bcde37c39f
Make `sync-protocol.md` pass the linter
2020-12-15 13:24:43 +08:00
Hsiao-Wei Wang
acfe49e3f3
executable light client patch: beacon-chain.md ( #2141 )
...
* Bump remerkleable to 0.1.18
* Disable `sync-protocol.md` for now. Make linter pass
* Enable lightclient tests
* Use *new* `optional_fast_aggregate_verify`
* Fix ToC and codespell
* Do not run phase1 tests with Lightclient patch
* Fix the Eth1Data casting bug. Add a workaround.
* Fix `run_on_attestation` testing helper
* Revert
* Rename `optional_fast_aggregate_verify` to `eth2_fast_aggregate_verify`
* Apply Proto's suggestion
* Apply Danny's suggestion
* Fixing tests
* Fix after rebasing
* Rename `LIGHTCLIENT` -> `LIGHTCLIENT_PATCH`
* New doctoc
* Add lightclient patch configs
* fix gitignore light client patch generator output
* Upgrade state for light client patch
* Add `lightclient-fork.md` to deal the fork boundary and fix
`process_block_header`
* Misc cleanups
1) Add a summary note for every function that is changed.
2) Avoid changing `process_block` (instead only change `process_block_header`).
3) Rename `G2_INFINITY_POINT_SIG` to `G2_POINT_AT_INFINITY` to avoid `SIG` contraction.
4) Misc cleanups
* Update block.py
* Update beacon-chain.md
* Fix typo "minimal" -> "mainnet"
Co-authored-by: Marin Petrunić <mpetrunic@users.noreply.github.com>
* Use the new `BeaconBlockHeader` instead of phase 0 version
* Update config files
* Move `sync_committee_bits` and `sync_committee_signature` back to `BeaconBlockBody`
Co-authored-by: protolambda <proto@protolambda.com>
Co-authored-by: Justin <drakefjustin@gmail.com>
Co-authored-by: Marin Petrunić <mpetrunic@users.noreply.github.com>
2020-12-15 13:18:20 +08:00
Danny Ryan
2c90ffa2f4
copy edits
2020-12-14 13:09:25 -07:00
Justin
645a3851af
Update deposit-contract.md
2020-12-12 22:02:56 +00:00
Justin
85c1347ffc
Update validator.md
2020-12-12 21:57:58 +00:00
Justin
f9edecf23c
Update validator.md
2020-12-12 21:56:30 +00:00
Justin
b085436f2f
Update validator.md
2020-12-12 21:51:21 +00:00
Justin
ae0b10edb7
Update validator.md
2020-12-12 21:46:39 +00:00
Justin
2cc9a12c98
Copy-edit deposit-contract.md
2020-12-12 20:50:10 +00:00
Justin
ef3802b8e7
Cleaner section title
...
"Withdrawal prefixes" matches `[BLS]/[ETH1_ADDRESS]_WITHDRAWAL_PREFIX`
2020-12-12 20:40:59 +00:00
Justin
784e567d4b
Fix table for withdrawal credentials prefixes
...
Minor cosmetic fixes (misformated table, section title).
2020-12-12 20:38:40 +00:00
Danny Ryan
6b728c1880
add eth1 withdrawal credentials to spec
2020-12-11 15:03:58 -07:00
Justin
f2fe390638
secret_key => privkey
2020-12-08 09:20:50 +00:00
Hsiao-Wei Wang
1a30ea9da9
Merge branch 'dev' into vbuterin-patch-2
2020-12-08 00:24:55 +08:00
Justin
0b9e80d1eb
grammar
2020-12-07 23:15:34 +08:00
Danny Ryan
3b7c02514b
straightforward light client edits
2020-12-07 08:10:39 -07:00
Justin
56048cbf56
Cosmetic cleanups to BLS signatures section
...
Miscellaneous cosmetic cleanups to the " BLS signatures" section:
1) fix section capitalisation for spec consistency
2) avoid uncapitalised "eth2" for spec consistency
3) avoid contractions (such as `PK` for `pubkey`) for spec consistency
4) various copyedits
2020-12-07 07:28:01 -07:00
Hsiao-Wei Wang
64412be0d7
Minor update ToC
2020-12-07 11:10:19 +08:00
Justin
b2d25f7454
Nitpicks
2020-11-25 11:59:01 +00:00
vbuterin
5bfe61f865
Embiggened sync committee size and added sub-aggregates
2020-11-25 19:38:45 +08:00
Justin
09ec58131d
Optimised updates as suggested by @vbuterin
2020-11-18 10:33:42 +00:00
Justin
d16900a753
Fixes from @ralexstokes
2020-11-18 09:31:41 +00:00
Justin
664bc4b42e
Polish and fixes including fixed-size sync committees
2020-11-18 09:19:32 +00:00
vbuterin
171b21301b
Added support for updates that point to finalized ancestors
2020-11-18 16:27:19 +08:00
vbuterin
830efa496a
Removed compact validators, make committee balance-based
2020-11-18 16:15:30 +08:00
Justin
5e717a456d
More polish and fixes
2020-11-17 15:30:09 +00:00
Justin
7ffc9c5bc0
More polish and fixes to the sync protocol
2020-11-17 14:18:58 +00:00
Justin
99219c874f
Revamp minimal light client (lots of polish and some bug fixes)
2020-11-17 12:42:09 +00:00
vbuterin
692a0aaaa5
Update specs/lightclient/sync-protocol.md
...
Co-authored-by: Alex Stokes <r.alex.stokes@gmail.com>
2020-11-17 13:26:26 +08:00
vbuterin
5e5d03d56f
Update specs/lightclient/sync-protocol.md
...
Co-authored-by: Alex Stokes <r.alex.stokes@gmail.com>
2020-11-17 13:26:18 +08:00
vbuterin
1c146b2c03
Update specs/lightclient/sync-protocol.md
...
Co-authored-by: Alex Stokes <r.alex.stokes@gmail.com>
2020-11-17 13:26:08 +08:00
vbuterin
a5e6d77165
Update specs/lightclient/sync-protocol.md
...
Co-authored-by: Alex Stokes <r.alex.stokes@gmail.com>
2020-11-17 13:25:59 +08:00
vbuterin
117d31985f
Update specs/lightclient/sync-protocol.md
...
Co-authored-by: Alex Stokes <r.alex.stokes@gmail.com>
2020-11-17 10:45:16 +08:00
vbuterin
f9e9d7cabf
Update specs/lightclient/sync-protocol.md
...
Co-authored-by: Alex Stokes <r.alex.stokes@gmail.com>
2020-11-17 10:45:02 +08:00
Hsiao-Wei Wang
4df3547edf
Make `lightclient` patch pass the linter ( #2133 )
...
* Make `lightclient` an executable patch fork
* fix conflicts
* Fix ToC
* Lightclient -> Light client
* Try protolambda/remerkleable#8
* Fix sync-protocol.md ToC
* Build lightclient/sync-protocol
* Fix typo
Co-authored-by: vbuterin <v@buterin.com>
Co-authored-by: vbuterin <v@buterin.com>
2020-11-17 10:41:26 +08:00
Justin
cbb3856ab9
Fix ToC (cherry-picked from @hwwhww's PR)
2020-11-16 09:09:04 +00:00
vbuterin
ca88dd6922
Removed extraneous data
2020-11-16 15:08:43 +08:00
vbuterin
97dc916c9e
Python syntax highlighted updates
2020-11-16 15:07:40 +08:00
vbuterin
1f210fd1f8
Added light client syncing protocol
2020-11-16 15:02:11 +08:00
Justin
114e388d12
Fix bugs—thanks @hwwhww
2020-11-15 17:23:44 +00:00
Justin
e7d52d9056
Significant polishing and a few substantive fixes
...
See discussion for further details.
2020-11-15 10:56:24 +00:00
vbuterin
555e131e2c
Small changes to make Justin happy
2020-11-14 13:56:00 +08:00
vbuterin
620b812c2e
Reduce reward by SLOTS_PER_EPOCH
2020-11-13 10:21:30 +08:00
vbuterin
9e3690ad17
Update specs/lightclient/beacon-chain.md
...
Co-authored-by: Alex Stokes <r.alex.stokes@gmail.com>
2020-11-13 10:19:37 +08:00
vbuterin
7c6ede5eac
Added standalone light client patch
2020-11-12 17:28:05 +08:00
Danny Ryan
7589af8e8d
remove wip notice on phase 0 specs
2020-11-04 09:30:29 -06:00
Danny Ryan
cd7b1056b4
add mainnet deposit contract address and min genesis time
2020-11-04 09:11:52 -06:00
Danny Ryan
2aa827c07f
Merge pull request #2107 from bloxapp/honest_val_time_attack
...
added best practices section according to https://github.com/ethereum …
2020-11-04 07:36:27 -06:00
Alon Muroch
6996a897b5
Apply suggestions from code review
...
Co-authored-by: Danny Ryan <dannyjryan@gmail.com>
2020-11-04 15:29:06 +02:00
Alon Muroch
5b95219d18
Apply suggestions from code review
...
Co-authored-by: Danny Ryan <dannyjryan@gmail.com>
2020-11-04 15:19:41 +02:00
Danny Ryan
cfc91cdef7
Merge pull request #2121 from AgeManning/gossipsub-mesh
...
Increase gossipsub mesh degree
2020-11-04 06:59:59 -06:00
Age Manning
82cdbba703
Increase mesh degree
2020-11-04 11:27:35 +11:00
Danny Ryan
c4ccdc90de
Merge branch 'dev' into v1.0-candidate
2020-11-03 17:09:48 -06:00
Danny Ryan
6b44f63751
Merge pull request #2104 from ethereum/state_transition_patch
...
Make `state_transition` not return post-state
2020-11-03 14:57:29 -06:00
Danny Ryan
bfaef689e4
Merge pull request #2092 from ethereum/ralexstokes-patch-1
...
Simplify fork choice spec
2020-11-03 06:58:35 -07:00
Danny Ryan
b356f52c5c
ensure aggregate attestation's slot and target are consistent
2020-10-28 17:54:46 -06:00
Alon Muroch
0835c78b56
Apply suggestions from Dankrad's code review
...
Co-authored-by: dankrad <mail@dankradfeist.de>
2020-10-27 08:38:54 +02:00
Alon Muroch
fe5e2f6a8b
table of content
2020-10-20 12:07:54 +03:00
Alon Muroch
73cd1a84fd
added best practices section according to https://github.com/ethereum/eth2.0-specs/issues/2085
2020-10-20 12:00:40 +03:00
Hsiao-Wei Wang
f1e4b3c88b
Refactor shard_state_transition
2020-10-15 16:14:01 +08:00
Hsiao-Wei Wang
7fb9226ec6
Make `state_transition` not return post state; the given pre state should have been mutated to post state.
2020-10-15 15:58:26 +08:00
Danny Ryan
c17a95a175
add note about how slashings and exits can interact. add test
2020-10-14 17:33:14 -06:00
Danny Ryan
427c7bb236
fix minor typo in validator guide
2020-10-08 10:18:15 -06:00
Danny Ryan
91deacbf9c
double eth1data params
2020-10-07 18:52:47 -06:00
Alex Stokes
663af77737
Clean up unused variable for linter
2020-10-07 17:11:13 -07:00
Alex Stokes
d0cf4e7bad
Simplify fork choice spec
...
This change should be non-substantive as any blocks in `blocks` should be descendants (inclusive) of the `store.justified_checkpoint` (refer `get_filtered_block_tree`) so that in `get_head` all blocks considered as potential heads will have `slot > justified_slot`. Considering this condition universally applies, adding the `and ...` arm to the conditional is unnecessary overhead.
2020-10-07 16:52:51 -07:00
Danny Ryan
d3d9bbd479
add note about coming gs v1.1 params
2020-10-07 17:46:20 -06:00
Danny Ryan
45de8198ca
Merge branch 'dev' into v1.0-candidate
2020-10-07 13:42:23 -06:00
Danny Ryan
64b34b5ca6
Merge pull request #2089 from ethereum/fix-message-id
...
fix message-id issues
2020-10-07 12:40:51 -06:00
Danny Ryan
8cda237884
note v5.1 in discv5 p2p spec
2020-10-07 12:13:32 -06:00
Danny Ryan
6287875baf
use domain byte to isolate message-id domains
2020-10-07 11:59:39 -06:00
Danny Ryan
a365fcb03b
fix message-id issues
2020-10-06 16:18:12 -06:00
Hsiao-Wei Wang
d264ad8af7
Merge pull request #2080 from ethereum/bls_v4
...
Bump IETF BLS spec version draft 03 -> draft 04
2020-10-05 22:12:52 +08:00
Danny Ryan
5f9e6599e9
Merge pull request #2060 from protolambda/signing-policy
...
Use gossip signing policy in p2p spec, see libp2p/specs#294
2020-09-30 12:03:21 -06:00
Danny Ryan
157f7e8ef4
upgrade config to mainnet values
2020-09-28 12:56:08 -06:00
protolambda
62d596a910
update signature policy link
2020-09-25 17:59:09 +02:00
Hsiao-Wei Wang
ad4ad2d8b4
Bump IETF BLS spec version draft 03 -> draft 04
2020-09-25 15:01:41 +08:00
protolambda
708827413f
cleanup phase1 TOC contents
2020-09-23 22:55:22 +02:00
Danny Ryan
8c9c943845
Merge pull request #2054 from ethereum/ralexstokes-patch-1
...
Typos in: p2p-interface.md
2020-09-22 17:32:10 -06:00
Danny Ryan
a232efbeb7
revert incorrect type fix
2020-09-22 17:20:55 -06:00
ericsson
104b83aab3
use integer division (//) instead of non-integer (/)
2020-09-22 18:54:44 +03:00
Danny Ryan
177f88962e
Merge pull request #2073 from ethereum/weak-subjectivity-guide
...
Weak subjectivity guide
2020-09-17 12:07:19 -06:00
Danny Ryan
8bb05827ab
add weak-subjectivity.md to setup.py build and do final lint cleanups
2020-09-17 12:01:25 -06:00
Aditya Asgaonkar
58d225c9be
Added WIP note, explanation for WS period calculation
2020-09-17 10:34:37 -07:00
Aditya Asgaonkar
6b33c766f2
Apply suggestions from Danny's code review
...
Co-authored-by: Danny Ryan <dannyjryan@gmail.com>
2020-09-17 10:26:49 -07:00
Aditya Asgaonkar
2023b24d72
Small change to CLI input description
2020-09-16 19:52:21 -07:00
Aditya Asgaonkar
3fd0eaa67a
Fix in WS guide
2020-09-15 17:37:38 -07:00
Aditya Asgaonkar
2b81ec9337
Added TOC to WS guide
2020-09-15 17:33:01 -07:00
Aditya Asgaonkar
dc841d4bf6
Cosmetic changes to WS guide
2020-09-15 17:21:38 -07:00
Aditya Asgaonkar
d71bb856e7
Added weak subjectivity guide
2020-09-15 17:10:39 -07:00
Danny Ryan
33cfcc4eb3
Merge pull request #2067 from ethereum/bls_v3_patch
...
Remove outdated BLS standard note
2020-09-15 10:12:15 -06:00
Danny Ryan
7c685d490e
Merge pull request #2061 from ethereum/anchor_block_header_3
...
Pass `anchor_block` to `get_forkchoice_store`
2020-09-15 10:10:29 -06:00
Hsiao-Wei Wang
899927af30
Remove note
2020-09-15 23:43:07 +08:00
Hsiao-Wei Wang
1e29563242
Pass `anchor_block` to `get_forkchoice_store`
2020-09-15 12:51:11 +08:00
protolambda
8ad0865424
Use gossip signing policy in p2p spec, see libp2p/specs#294
2020-09-15 01:15:16 +02:00
Danny Ryan
59cb56b564
Merge pull request #2044 from blacktemplar/use-raw-sha-as-message-id
...
use raw SHA256 as message-id
2020-09-14 11:25:34 -06:00
Danny Ryan
5a9fe89089
remove extraneous parens
2020-09-14 10:58:48 -06:00
Danny Ryan
89be1f5bc8
favor pythonic notation for array slices
2020-09-14 10:57:35 -06:00
blacktemplar
deb58fd21e
only use first 8 bytes of hash as message id
2020-09-14 10:09:48 +02:00
Alex Stokes
3cb15806be
Update p2p-interface.md
...
Typo fixes
2020-09-11 17:08:37 -07:00
Hsiao-Wei Wang
cfc69e47e6
Bump IETF BLS standard version to -03
2020-09-11 17:17:51 +08:00
blacktemplar
8f0b15f9f7
remove dot
2020-09-11 06:44:36 +02:00
Danny Ryan
8948f92def
Merge branch 'dev' into more_gossip_validations
2020-09-10 14:33:48 -06:00
Danny Ryan
42bf435c54
rearrange gossip conditions
2020-09-10 14:10:09 -06:00
Danny Ryan
54f1abc943
Merge pull request #2036 from ethereum/typing_clean
...
Non-substantive typing clean-up
2020-09-10 14:07:32 -06:00
blacktemplar
9cbc7c37f4
use raw SHA256 as message-id
2020-09-09 15:02:47 +02:00
Hsiao-Wei Wang
6e900f4fcc
Add more typings, no substantive change
2020-09-03 19:27:16 +08:00
Hsiao-Wei Wang
eed2df37f4
Make linter happy
2020-09-03 17:27:20 +08:00
vbuterin
b35f8fff74
Add a constant for slash penalty multiplier
...
Make the multipler on slashed penalties (if portion `p` of validators are slashed each one loses `k*p` an explicit constant).
2020-09-02 12:26:27 +08:00
lsankar4033
a156f3821f
Add two more attestation gossip validations
2020-08-26 16:18:38 -07:00
lsankar4033
a4acd38981
fix typo
2020-08-26 16:11:42 -07:00
tintinweb
c3ff87461f
fix typo
2020-08-21 12:10:10 +02:00
Danny Ryan
e56b7cb4c0
Merge pull request #2022 from ethereum/state-for-block
...
clarify what 'state' is for block proposals in validator guide
2020-08-20 17:39:57 -06:00
Danny Ryan
e323260a4a
fix some confusing language in validtor guide
2020-08-20 17:03:49 -06:00
Danny Ryan
444cd0249a
minot typo fix
...
Co-authored-by: Alex Stokes <r.alex.stokes@gmail.com>
2020-08-20 16:53:09 -06:00
Danny Ryan
9742b3a157
clarify what 'state' is for block proposals in validator guide
2020-08-19 09:58:02 -06:00
Hsiao-Wei Wang
adf8698778
Update the docs and remove unused code
2020-08-18 00:58:08 +08:00
Hsiao-Wei Wang
643611aa6d
Merge pull request #2010 from ethereum/fix-shard-count
...
Fix active shard count issues
2020-08-12 03:05:16 +08:00
Danny Ryan
2a41c516d3
Merge pull request #2001 from lsankar4033/attestation-epoch-consistency
...
Add self-consistency check to attestation gossip validation
2020-08-11 12:59:19 -06:00
vbuterin
1f767ca8b9
Remove AttestationCustodyBitWrapper
...
Seems like this class is extraneous ever since we added Dankrad's 0.001 bit custody game.
2020-08-11 12:35:31 +08:00
Danny Ryan
8b39d41145
PR feedback
2020-08-10 13:06:20 -06:00
terence tsao
77b933035c
Update apply_shard_transition comments
2020-08-10 07:15:54 -07:00
terence tsao
d22e02f20a
Update specs/phase1/beacon-chain.md
...
Co-authored-by: Hsiao-Wei Wang <hwwang156@gmail.com>
2020-08-10 06:26:52 -07:00
terence tsao
729e21cbcf
apply_shard_transition: copy shard state
2020-08-08 09:29:04 -07:00
Danny Ryan
c3ae85387c
add larger validator set test for regression test for active_shard_count issue
2020-08-05 13:26:21 -06:00
Danny Ryan
56dbc17793
fix active shard count bugs
2020-08-05 12:44:31 -06:00
Danny Ryan
bf6d5ce3b6
port #2005 and rearrange conditions
2020-08-03 09:42:52 -06:00
Hsiao-Wei Wang
e3bbf3c702
Merge branch 'dev' into shard-fork-choice-fix
2020-07-29 23:55:30 +08:00
Hsiao-Wei Wang
bd5346b624
Merge pull request #1989 from ethereum/enable-bls-citest
...
Enable Milagro BLS in CI
2020-07-29 23:54:53 +08:00
lsankar4033
3a0dd2b253
Add self-consistency check to attestation gossip validation
2020-07-28 17:51:32 -07:00
Hsiao-Wei Wang
b58633ce5d
Quick fix the phase 1 configurations and tests ( #1990 )
...
* Quick fix the configurations
* Remove the unused `CUSTODY_RESPONSE_DEADLINE`
2020-07-29 02:06:25 +08:00
Danny Ryan
f6da7323fe
Merge pull request #1999 from ethereum/genesis-comments
...
add clarifying comment for genesis skip conditions
2020-07-28 12:31:54 -04:00
Hsiao-Wei Wang
f6fd151872
Merge branch 'dev' into shard-fork-choice-fix
2020-07-29 00:15:41 +08:00
Hsiao-Wei Wang
b1eb157539
Merge branch 'dev' into hwwhww/phase-1-fork-slot
2020-07-28 23:59:19 +08:00
Danny Ryan
b529d47a3b
pr feedback
2020-07-28 11:48:45 -04:00
Hsiao-Wei Wang
a8370f7448
Apply refactoring suggestions from Danny
2020-07-28 21:51:00 +08:00
Danny Ryan
235fb7e2a5
add clarifying comment for genesis skip conditions
2020-07-28 06:48:16 -04:00
Danny Ryan
049e087da0
Merge pull request #1996 from status-im/epoch-check
...
process_attestation: Validate epoch before using it
2020-07-24 08:04:06 -06:00
Jacek Sieka
6f7652d330
process_attestation: Validate epoch before using it
...
`data.target.epoch` is used to count the active validator set.
Because `get_committee_count_per_slot` is extremely inefficient the way
the spec is written, clients cache it, or the underlying active
validator set.
Performing the checks in the given order leads to a (very unlikely)
security issue where the a cold and above all, distant value may get
used which may be costly - reordering the checks brings the value into a
more reasonable range before using it.
2020-07-24 07:26:37 +02:00
Danny Ryan
607041225f
split config vs constants in deposit-contract spec
2020-07-23 15:05:25 -06:00
Danny Ryan
4c3f866a0f
add links for network and chain id
2020-07-23 12:25:44 -06:00
Hsiao-Wei Wang
e7f070d525
Use `hash_tree_root` to generate `ShardBlockHeader.body_root`
...
Include the mix-in length to the proof.
2020-07-24 02:09:25 +08:00
Danny Ryan
9193a23f8e
add chain id and netowrk id to config
2020-07-23 12:05:22 -06:00
Diederik Loerakker
247da83e62
Merge pull request #1985 from ethereum/non-viable-gossip
...
add that current block is in the same chain as finalized ancestor
2020-07-23 19:18:53 +02:00
Danny Ryan
3cf6832198
Apply suggestions from code review
...
Co-authored-by: Diederik Loerakker <proto@protolambda.com>
2020-07-23 10:46:31 -06:00
Danny Ryan
b3e49ff0d3
add finalized ancestor checks to attestation gossip
2020-07-23 10:39:04 -06:00