vbuterin
044c87fe39
fix State -> BeaconState
2019-03-03 22:41:23 -06:00
Danny Ryan
1444687798
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-03-03 20:14:03 -06:00
Danny Ryan
cc146475d9
Merge pull request #694 from ethereum/proposer-next-epoch
...
make get_beacon_proposer_index safe for next epoch
2019-03-03 17:01:20 -07:00
Danny Ryan
0444c2e05e
Merge branch 'dev' into vbuterin-patch-7
2019-03-03 16:58:54 -07:00
Danny Ryan
146aef313e
Merge pull request #699 from ethereum/start_shard_bug
...
fix committee assignment bugs
2019-03-03 16:53:57 -07:00
vbuterin
38e166d4a3
More python typos!
2019-03-03 06:01:03 -06:00
vbuterin
805ea5dad5
Transfer from -> sender
...
Needed to avoid triggering errors in python
2019-03-03 05:59:11 -06:00
vbuterin
68bc91bb3a
Fixed custody bit participants typo
2019-03-03 05:56:57 -06:00
vbuterin
73f9ad0512
Added missing colon
2019-03-03 05:54:58 -06:00
vbuterin
d0fc455a1f
Assimilated #649
2019-03-03 05:04:28 -06:00
vbuterin
dcb0205adc
Merge branch 'dev' into vbuterin-patch-7
2019-03-03 04:30:51 -06:00
vbuterin
46b1d4eef5
Assimilated #697
2019-03-03 04:28:13 -06:00
Hsiao-Wei Wang
868359a674
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-03-03 04:00:09 -06:00
Hsiao-Wei Wang
cd7c7228c9
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-03-03 03:59:12 -06:00
Hsiao-Wei Wang
72c28bc59a
Refactor `process_slashings`
2019-03-03 17:58:45 +08:00
Hsiao-Wei Wang
19924f3148
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-03-03 03:58:18 -06:00
Hsiao-Wei Wang
07599b3a45
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-03-03 03:57:48 -06:00
Hsiao-Wei Wang
1103fd1ee8
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-03-03 03:57:27 -06:00
Hsiao-Wei Wang
fa613b401f
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-03-03 03:56:54 -06:00
Hsiao-Wei Wang
2d6697eb62
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-03-03 03:56:12 -06:00
Hsiao-Wei Wang
c42cab87a7
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-03-03 03:55:20 -06:00
Hsiao-Wei Wang
c9a6215ab8
Merge pull request #713 from protolambda/protolambda-fix-randao-mixes
...
fix randao mixes type, bytes32 like in function and state spec
2019-03-03 13:50:34 +08:00
vbuterin
cefe9e995b
Proof of custody game, take 2 ( #682 )
...
* Proof of custody game, take 2
Unfortunately not simpler than before, but moves challenges outside of the validator records and so keeps validator records constant-size.
* Removed unneeded challenge codes
* Formatting fixes
2019-03-02 20:36:04 -06:00
vbuterin
fde66a7105
Update to make CC happy
2019-03-02 20:11:33 -06:00
protolambda
f137f1ce90
fix randao mixes type, bytes32 like in function and state spec
2019-03-02 18:02:50 +01:00
vbuterin
ce5599db2f
Made crosslink processing a function
2019-03-02 00:42:20 -06:00
vbuterin
0134e56010
Fixed table of contents
2019-03-02 00:40:43 -06:00
Hsiao-Wei Wang
fa327a18ea
Add docstring
2019-03-02 13:51:48 +08:00
Hsiao-Wei Wang
00804da13e
Fix type hinting
2019-03-02 13:48:46 +08:00
vbuterin
4ad3529e4e
Finished epoch transition
2019-03-01 19:49:28 -06:00
vbuterin
2d4c8af489
Split up big function into two smaller functions
2019-03-01 19:34:26 -06:00
vbuterin
7c6232a602
Update 0_beacon-chain.md
2019-03-01 19:22:24 -06:00
vbuterin
4cc738dc53
Apply suggestions from code review
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-03-01 19:17:07 -06:00
Hsiao-Wei Wang
e0b8eea7d6
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-03-01 19:12:31 -06:00
Hsiao-Wei Wang
46269310ee
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-03-01 19:12:21 -06:00
Hsiao-Wei Wang
6c1abbc2fc
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-03-01 19:12:11 -06:00
vbuterin
b8d1003c2c
Updates to make HW and Danny happy
2019-03-01 19:11:13 -06:00
Hsiao-Wei Wang
ec20edb80e
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-03-01 19:05:02 -06:00
Hsiao-Wei Wang
3d8e0f1920
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-03-01 19:04:55 -06:00
Hsiao-Wei Wang
ff88d22f9a
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-03-01 19:04:49 -06:00
vbuterin
26179ede5f
branch -> proof
2019-03-01 19:01:40 -06:00
Hsiao-Wei Wang
0c24ca9bb0
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-03-01 18:59:55 -06:00
vbuterin
5ceec70dd3
Pythonize epoch transitions (in progress)
2019-03-01 07:59:52 -06:00
Justin
25ef2553c7
Update simple-serialize.md
2019-03-01 12:02:29 +01:00
vbuterin
236298a8e4
Hard assert that the Merkle branch is valid
2019-03-01 03:58:18 -06:00
Danny Ryan
19665e4ca5
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-03-01 00:16:05 -06:00
Danny Ryan
0fb4cae2d6
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-03-01 00:15:49 -06:00
Danny Ryan
5ed0f276f6
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-03-01 00:13:59 -06:00
Danny Ryan
a9be1018d3
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-03-01 00:13:32 -06:00
Danny Ryan
19c3189c1c
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-03-01 00:13:22 -06:00
Danny Ryan
087576a7bb
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-03-01 00:12:45 -06:00
vbuterin
80ac62606c
Unified deposit processing between genesis and transaction
2019-02-28 21:07:10 -06:00
vbuterin
d5900836aa
Convert transaction descriptions from English to python code
...
Only a change of presentation, does not make any substantive changes.
Does NOT handle Deposit transactions because that is a special case for which I recommend a deeper change (will do this in another PR soon).
2019-02-28 20:54:59 -06:00
Danny Ryan
8df7de150e
Merge pull request #703 from Nashatyrev/strict-active-validator
...
Make 'Any active validator' statements stricter.
2019-02-28 17:24:30 -07:00
Hsiao-Wei Wang
bcb0b8bf87
Refactor `exit_validator`
2019-03-01 00:49:51 +08:00
Hsiao-Wei Wang
bdd6868736
Fix ToC
2019-03-01 00:49:51 +08:00
Hsiao-Wei Wang
b836b30bff
Fix "is_ready_to_exit" condition
2019-03-01 00:49:45 +08:00
Anton Nashatyrev
f38dc048e4
Make 'Any active validator' statement more strict.
2019-02-28 17:17:00 +03:00
Hsiao-Wei Wang
dbbfb93873
Order by `committees_per_epoch`, `seed`, `shuffling_epoch`, and
...
`shuffling_start_shard`
2019-02-28 19:07:37 +08:00
Justin
67793edc8d
Update simple-serialize.md
2019-02-28 11:34:24 +01:00
Justin
7ab7abe2ca
Update simple-serialize.md
2019-02-28 11:32:54 +01:00
Hsiao-Wei Wang
34091d70ec
Fix typo
2019-02-28 16:30:46 +08:00
Danny Ryan
bb44d25665
Merge pull request #688 from decanus/patch-21
...
Use `slashed` bool more Pythonicly
2019-02-27 15:02:33 -07:00
Danny Ryan
5692b3483d
Update 0_beacon-chain.md
2019-02-27 15:02:11 -07:00
Danny Ryan
769afa704e
Merge pull request #684 from ethereum/vbuterin-patch-5
...
Developer notice
2019-02-27 14:58:29 -07:00
Justin
3e6934b602
Update simple-serialize.md
2019-02-27 22:44:20 +01:00
Justin
74349eacd2
Update simple-serialize.md
2019-02-27 22:33:36 +01:00
Danny Ryan
8176cc4cf0
Apply suggestions from code review
...
Co-Authored-By: JustinDrake <drakefjustin@gmail.com>
2019-02-27 22:23:42 +01:00
Danny Ryan
c9ac8170f0
ensure that next committee assignemtns is stable when need to be
2019-02-27 11:37:54 -07:00
Danny Ryan
e2f4e32332
fix committee start shard bug
2019-02-27 11:27:23 -07:00
Justin
bac352e70f
Update simple-serialize.md
2019-02-27 18:02:53 +01:00
Justin
99074d09ec
Update simple-serialize.md
2019-02-27 18:00:49 +01:00
Justin
e766193588
Update simple-serialize.md
2019-02-27 17:59:49 +01:00
Justin
54a81a8ebf
Update simple-serialize.md
2019-02-27 17:56:51 +01:00
Justin
aa676354a0
Update simple-serialize.md
2019-02-27 17:54:19 +01:00
Justin
95fa9d56b8
Update simple-serialize.md
2019-02-27 17:35:26 +01:00
jannikluhn
828146cbf8
Apply suggestions from code review
...
Co-Authored-By: JustinDrake <drakefjustin@gmail.com>
2019-02-27 17:15:46 +01:00
Justin
0df8f8b3c6
Update simple-serialize.md
2019-02-27 13:04:36 +01:00
Justin
e698d7e29b
Update simple-serialize.md
2019-02-27 12:57:06 +01:00
Justin
07922a63fb
Update simple-serialize.md
2019-02-27 12:54:56 +01:00
Justin
28cf5860ea
Update simple-serialize.md
2019-02-27 12:53:24 +01:00
Justin
5116645dfa
Update simple-serialize.md
2019-02-27 12:40:08 +01:00
Justin
313fe46a94
Update simple-serialize.md
2019-02-27 12:06:06 +01:00
Justin
df50ac1adc
Update simple-serialize.md
2019-02-27 12:03:27 +01:00
Justin
5c5f15c82c
Rewrite SSZ spec
...
* Implement tuples and a chunk-size reduction to 32 bytes (see #665 and #679 )
* Simplify presentation where appropriate. For example, deserialisation is implicit from serialisation (similar to `bls_sign` being implicit from `bls_verify`) and is left as an implementation exercise.
* Dramatically reduce spec size and hopefully improve readability.
2019-02-27 11:54:23 +01:00
vbuterin
e9c3af5428
Update 1_shard-data-chains.md
2019-02-26 18:00:20 -06:00
Danny Ryan
b2c53045fc
make get_beacon_proposer_index safe for next epoch
2019-02-26 15:55:27 -07:00
Alex Stokes
e7d908f1f1
formatting nitpick
...
drop some parens in the spirit of consistency and parsimony
2019-02-26 14:45:25 -08:00
Dean Eigenmann
8b14a2bef5
Update 0_beacon-chain.md
2019-02-26 17:15:26 +01:00
Danny Ryan
daa8275318
minor bug in validator doc `get_committee_assignment` ( #689 )
2019-02-26 12:19:28 +08:00
vbuterin
05f6f68028
Made developer notice less committal
2019-02-25 16:45:57 -06:00
Dean Eigenmann
c9f1dfcbb3
Update 0_beacon-chain.md
2019-02-25 21:39:23 +01:00
Danny Ryan
b2a3ee4bbc
skip bad proof of possession deposits
2019-02-25 09:36:52 -07:00
Danny Ryan
fbb70e91eb
remove todo
2019-02-25 07:58:23 -07:00
Danny Ryan
b2ed80250a
Merge pull request #678 from ethereum/JustinDrake-patch-6
...
Allow transfers from non-activated validators
2019-02-25 07:54:57 -07:00
vbuterin
6a92407702
Developer notice
2019-02-25 04:16:18 -06:00
Justin
6b5769a861
Update 0_beacon-chain.md
2019-02-25 10:30:03 +01:00
Danny Ryan
8c666e8930
Merge pull request #676 from ethereum/JustinDrake-patch-4
...
Specify lexicographic ordering of crosslink_data_root
2019-02-24 18:43:26 -07:00
Danny Ryan
8dbb7326ee
Merge pull request #673 from ethereum/genesis_committee_assign
...
make getting assignments more generic
2019-02-24 17:50:42 -07:00
Justin
da6b5466d5
Allow transfers from non-activated validators
...
See item 6 in https://github.com/ethereum/eth2.0-specs/issues/675 . This makes transfers more generic.
2019-02-23 20:25:55 +01:00
Justin
1d757aec74
Specify lexicographic ordering of crosslink_data_root
...
Fix #542 .
2019-02-22 21:02:03 +01:00
Danny Ryan
060e3c36c5
fix up previous epoch logic around genesis ( #672 )
2019-02-22 20:51:09 +01:00
Hsiao-Wei Wang
c96f709505
Update 0_beacon-chain-validator.md
2019-02-23 00:31:27 +08:00
Danny Ryan
06e6496bca
Merge pull request #662 from ethereum/vbuterin-patch-5
...
Rename shard_block_root -> crosslink_data_root
2019-02-22 08:51:01 -07:00
Danny Ryan
b89cd234f0
change shard_block_root to crosslink_data_root throughout
2019-02-22 08:50:03 -07:00
Danny Ryan
a683416537
Fix slot range for attestation inclusion ( #669 )
...
* Fix slot range for attestation inclusion
* Update specs/core/0_beacon-chain.md
Co-Authored-By: djrtwo <dannyjryan@gmail.com>
2019-02-22 23:36:36 +08:00
Danny Ryan
d0d2fa10d9
Merge pull request #671 from ethereum/v-guide-bugs
...
validator guide bug fixes
2019-02-22 08:34:34 -07:00
Danny Ryan
d27132cb0a
Merge pull request #658 from ethereum/vbuterin-patch-3
...
Turned slashed and initiated_exit into booleans
2019-02-22 08:34:17 -07:00
terence tsao
68b5fe5b9f
small typo
...
Co-Authored-By: djrtwo <dannyjryan@gmail.com>
2019-02-22 08:15:40 -07:00
Dean Eigenmann
e1fc8a5765
Update 0_beacon-chain.md
2019-02-22 13:00:29 +01:00
Dean Eigenmann
a8c3c45faf
Update 0_beacon-chain.md
2019-02-22 12:58:59 +01:00
Hsiao-Wei Wang
e8d41fd889
Fix missing `get_epoch_start_slot()`
2019-02-22 14:30:07 +08:00
vbuterin
f77b9e2414
Changed name to crosslink data commitment
2019-02-22 00:21:56 -06:00
Danny Ryan
8169229f5a
clean up
2019-02-21 16:58:58 -07:00
Danny Ryan
f28af3f72b
Add spacing
2019-02-21 16:56:43 -07:00
Danny Ryan
2bd6057c12
make getting assignments more generic
2019-02-21 16:53:52 -07:00
Danny Ryan
d31aeacd3c
fix minor errors per #628
2019-02-21 15:18:41 -07:00
Danny Ryan
0f222171ca
fix epoch boundary root per #652
2019-02-21 15:14:59 -07:00
Danny Ryan
830ae3be9a
Merge pull request #655 from ethereum/JustinDrake-patch-4
...
Reduce GENESIS_SLOT to 2**32
2019-02-21 14:51:12 -07:00
Justin
5f59aad00d
Clarify use of `FAR_FUTURE_EPOCH` as a flag
2019-02-21 22:34:11 +01:00
Hsiao-Wei Wang
26908d5579
Fix constant name `MIN_VALIDATOR_WITHDRAWABILITY_DELAY` -> `MIN_VALIDATOR_WITHDRAWABILITY_DELAY` ( #661 )
2019-02-20 15:58:25 +00:00
Hsiao-Wei Wang
a79fa398f1
Minor fix: `messages` -> `message_hashes` ( #664 )
2019-02-20 11:42:53 +00:00
Justin
e25e87f003
Update 0_beacon-chain.md
2019-02-20 07:45:19 +00:00
Justin
9ac61e57c0
Update 0_beacon-chain.md
2019-02-20 07:18:12 +00:00
vbuterin
461cd8b599
Rename shard_block_root -> shard_data_commitment
2019-02-20 00:46:28 -06:00
vbuterin
09e8448763
Turned slashed and initiated_exit into booleans
...
Cuts validator record size from 120 to 106 bytes, and arguably is a simplification
2019-02-19 20:00:46 -06:00
Alex Stokes
8262ce1cc0
Fix typo from earlier renaming in #534 .
2019-02-19 15:09:11 -07:00
Justin
9b7b35bc9d
Reduce GENESIS_SLOT to 2**32
...
* Address the slot/epoch underflow problem, even for Java implementers! 🎉
* Squash a bug with `get_previous_epoch`
* Fix #642
* Address #626 (Vitalik, Danny, myself agree that avoiding signed integers is probably best)
2019-02-19 21:08:10 +00:00
terence tsao
a3d85c8405
Update 0_beacon-chain.md ( #654 )
2019-02-19 17:49:37 +00:00
sigmoid
00aa553fee
updated SSZ implementation list ( #653 )
...
* updated SSZ implementation list
Signed-off-by: sigmoid <alphabet@hotmail.co.kr>
* Update specs/simple-serialize.md
Co-Authored-By: NAKsir-melody <alphabet@hotmail.co.kr>
2019-02-20 00:47:15 +08:00
vbuterin
2540f55c13
Updated phase 1: branch and early subkey reveal challenges ( #587 )
...
* Updated phase 1: branch challenges
* Removed unnecessary line
* Added early subkey reveal slashing
* Revealing during the active period is still revealing early
* Added....
* Machinery for publishing old subkeys
* Inability to withdraw until you published all subkeys
* After a validator exits the queue there's still a minimum 1-day delay before they can withdraw (in the future this delay will be used as an opportunity to start a PoC challenge game)
* Update 1_shard-data-chains.md
* formatting
* minor edits
* Added masking scheme for reveals
Secure under the aggregate extraction infeasibility assumption described on pages 11-12 of https://crypto.stanford.edu/~dabo/pubs/papers/aggreg.pdf
* Added rewards going to challengers
* Add ToC and reorg the constant tables
* Remove tags
* fix constant formatting
* normalize domain constants in phase 1
* Update 1_shard-data-chains.md
* Update 1_shard-data-chains.md
* Update 1_shard-data-chains.md
* Added transition logic
* Fix ToC
* Fix ToC
* Adjusted for #615
* Added more helpers
* epoch -> slot
* fix some type hints
* clean up `get_attestation_merkle_depth`
2019-02-19 05:26:35 -06:00
terence tsao
f0b562054f
Update 0_beacon-chain-validator.md ( #650 )
2019-02-19 16:19:31 +08:00
Danny Ryan
0bc3998c89
Merge pull request #641 from paulhauner/patch-11
...
Fix out-of-bounds in `get_shuffling`
2019-02-18 10:22:57 -07:00
Danny Ryan
75e649cc15
Merge pull request #634 from paulhauner/patch-10
...
Add explicit assert to get_permutated_index
2019-02-18 10:14:07 -07:00
Danny Ryan
9eb3be5471
Merge branch 'dev' into JustinDrake-patch-1
2019-02-17 21:16:45 -07:00
Cayman
5fbbb4f181
Clarify merkle_root documentation ( #646 )
...
This function is used to get the merkle root of some block roots which are themselves hashes, so the leaves do not need to be rehashed.
Unfortunately, it's easy to assume that a merkle_root function would hash its leaves, so it should be clarified.
2019-02-18 12:11:01 +08:00
Cayman
eea413bcc5
Fix typos ( #648 )
2019-02-17 22:53:59 +00:00
vbuterin
59ade930d6
Signature hashing proposal ( #625 )
...
If this is accepted, then we can replace all uses of signing in the protocol, which are currently done in a relatively inconsistent way (see proposer signatures, attester signatures, shard proposer signatures, exit message signatures.....) could be unified.
2019-02-16 21:44:27 +00:00
Justin
4baa13050e
Update 0_beacon-chain.md
2019-02-16 21:13:46 +00:00
Justin
1d95c1482c
Update 0_beacon-chain.md
2019-02-16 21:11:48 +00:00
d-yokoi
f2e547e629
docs: fix typo in 0_beacon-chain.md
2019-02-16 23:12:00 +09:00
d-yokoi
464947dbd4
docs: fix typo in 0_beacon-chain.md ( #640 )
2019-02-16 09:11:29 +00:00
Paul Hauner
b92cd9be03
Add fix to `get_shuffling`
...
Ensures it does not try to shuffle out of range of the `active_validator_indices` list.
2019-02-16 17:55:27 +11:00
Paul Hauner
2e6bf87bdf
Fix max list size for get_permutated_index
2019-02-16 17:27:47 +11:00
Danny Ryan
f932534763
Merge pull request #637 from ethereum/hwwhww-patch-2
...
Fix `slash_validator`
2019-02-15 09:40:24 -07:00
Jonny Rhea
e074bc2c34
Update 0_beacon-chain.md ( #635 )
...
replace vote_data with slashable_attestation in verify_slashable_attestation()
2019-02-15 14:48:09 +00:00
Hsiao-Wei Wang
984eb79f68
Fix unix time condition of an acceptable block ( #636 )
2019-02-15 13:46:47 +00:00
Justin
2207fd17f5
Update 0_beacon-chain.md
2019-02-15 13:37:36 +00:00
Hsiao-Wei Wang
6f856ba009
Comparing in slot
2019-02-15 18:33:22 +08:00
Hsiao-Wei Wang
e0c28a3cd0
Fix `slash_validator`
...
Define `validator` before using it.
2019-02-15 18:25:30 +08:00
Paul Hauner
2f327f36d8
Improve asset in get_permutated_index
2019-02-15 12:50:56 +11:00
Paul Hauner
267f840570
Add explicit assert to get_permutated_index
...
There is an implicit assert in `int_to_bytes4`, however I think it's rather hidden.
2019-02-15 11:57:23 +11:00
Justin
888b06ce4a
Update 0_beacon-chain.md
2019-02-15 00:24:46 +00:00
Justin
ab140c2f1c
Update 0_beacon-chain.md
2019-02-15 00:23:03 +00:00
Danny Ryan
375659dc6c
name changes in validator doc and phase 1 doc
2019-02-14 16:02:01 -07:00
Danny Ryan
81e8f53ab9
Merge pull request #629 from terenc3t/patch-50
...
Quick fix on epoch boundary root
2019-02-14 15:44:40 -07:00
terence tsao
380f5bc86b
Update 0_beacon-chain-validator.md
2019-02-14 14:00:43 -08:00
Justin
241ae5ed49
Merge branch 'dev' into name-changes
2019-02-14 20:48:34 +00:00
Danny Ryan
677efe5840
fix off by one attestaton issue due to attesting to post state of block ( #627 )
2019-02-14 20:16:19 +00:00
Paul Hauner
d7fb7729e6
Add cautionary assert in shuffling function ( #622 )
2019-02-14 14:14:59 +00:00
vbuterin
6c49270664
Added minimum slashing penalty of ~1 ETH ( #624 )
2019-02-14 14:00:12 +00:00
Justin
e86fa58167
Merge branch 'dev' into name-changes
2019-02-14 10:27:17 +00:00
vbuterin
eadfa20b99
Bring forward changes to withdrawability from phase 1 ( #615 )
...
* Bring forward changes to withdrawability from phase 1
* The `WITHDRAWABLE` flag is removed; instead, a validator's withdrawability is determined through the `withdrawable_epoch` field (renamed and re-purposed from `withdrawal_epoch` which was not used)
* When a validator passes through the withdrawal queue, the `prepare_validator_for_withdrawal` function does not let them withdraw immediately; instead, they have to wait `MIN_VALIDATOR_WITHDRAWAL_EPOCHS`. This extra minimum delay serves no value in phase 0, but is crucial for phase 1 as the period between a validator passing through the queue and the validator being eligible to withdraw is where proof of custody challenges can come in; adding it in phase 0 is only half a line of code so easier to add it now.
* If a validator is penalized, they are no longer subject to the exit queue; instead, their `withdrawable_epoch` is set `LATEST_PENALIZED_EXIT_LENGTH` into the future and this is used to determine when the validator can withdraw
* Changes the eligibility condition for a transfer to use the `withdrawable_epoch`
2019-02-14 10:20:53 +00:00
Justin
f14af7ae67
Merge branch 'dev' into name-changes
2019-02-13 23:53:38 +00:00
Danny Ryan
83b67b6097
Merge pull request #617 from ethereum/hwwhww/fix_compute_commitment
...
Fix `compute_commitment`
2019-02-13 11:54:03 -07:00
terence tsao
fd5c3ee8b5
Update 0_beacon-chain.md
2019-02-13 08:38:03 -08:00
Hsiao-Wei Wang
f7320ec25b
Fix `compute_commitment`
...
1. Use `+` to concatenate the merkle roots in `hash` function.
2. Fix `pad_to_power_of_2`: padding with `[b'\x00' * SHARD_BLOCK_SIZE]`,
not `[SHARD_BLOCK_SIZE]`.
2019-02-14 00:30:00 +08:00
Danny Ryan
3d5aa352be
Merge pull request #597 from ethereum/reward-clarifications
...
Reward clarifications/fix
2019-02-13 08:21:30 -07:00
terence tsao
a730295982
Update 0_beacon-chain.md ( #614 )
2019-02-13 01:40:24 +00:00
vbuterin
cf371c4973
Add support for transfers between withdrawn accounts ( #601 )
2019-02-12 22:41:38 +00:00
Justin
b6d27edd6e
Update 0_beacon-chain.md
2019-02-12 22:38:29 +00:00
Justin
3459515c2c
Merkleise SSZ container elements ( #595 )
...
Reasons to use `merkle_hash` instead of `hash` for containers:
1) **Smaller witnesses**: `BeaconState` is a somewhat wide container (26 fields as of now, likely 30+ in phase 2). With concatenation and plain concatenation the size of the Merkle witnesses for the top level are ~32 bytes per field element.
2) **Faster incremental hashing**
3) **Consistency**: Consistent with `merkle_hash` for lists/vectors.
2019-02-12 21:57:54 +00:00
Danny Ryan
8213ad64e2
add note about attestations on chain voting for justified
2019-02-12 13:08:17 -08:00
Justin
bd9baeca0c
Update 0_beacon-chain.md
2019-02-12 13:37:30 +00:00
Justin
d4f79c8878
Update 0_beacon-chain.md
2019-02-12 12:28:13 +00:00
Justin
de7263c838
Update 0_beacon-chain.md
2019-02-12 12:24:19 +00:00
Justin
8445d06b8f
Merge branch 'dev' into name-changes
2019-02-12 11:59:05 +00:00
Jacek Sieka
f871b9a0d1
Use little endian bit order ( #575 )
...
Slightly more simple and common to find bit n at position `1 << n`
2019-02-12 11:52:07 +00:00
Justin
9a4f4d5344
Fix SSZ merkleisation bug ( #602 )
2019-02-12 11:12:29 +00:00
Hsiao-Wei Wang
41e95cf9ea
Refactor `get_persistent_committee` ( #604 )
2019-02-12 11:11:45 +00:00
Paul Hauner
de90d4475e
Provide definition for undefined `index` ( #608 )
...
The `index` variable is not defined and, IMO, it's difficult to discern.
2019-02-12 11:09:27 +00:00
Paul Hauner
3ea0c27be0
Minor modification to reduce lines of code ( #607 )
2019-02-12 11:06:26 +00:00
Danny Ryan
98902d12e3
assert/unhandled exception note to state transition ( #606 )
2019-02-11 21:30:36 +00:00
Danny Ryan
c44f6c0dbb
Merge pull request #600 from ethereum/JustinDrake-patch-3
...
Add note on leap seconds
2019-02-11 08:08:50 -07:00
Justin
0069241b9c
Alias `bytes` to `List[bytes1]`
2019-02-11 14:49:11 +00:00
Justin
2275587149
Add note on leap seconds
...
Clarify the local time is Unix time and add note on leap seconds.
2019-02-11 13:29:54 +00:00
Jordan Andrews
afca1e2127
Add C# implementation
2019-02-11 22:01:05 +11:00
Danny Ryan
1d77c57374
clarify active validator meaning for rewards/penalties
2019-02-10 18:43:56 -07:00
Danny Ryan
e8f9dce1d3
simply reward logic for justified slot from previous epoch
2019-02-10 18:38:42 -07:00
vbuterin
db4f99d899
Fixed end of code block
2019-02-10 15:47:26 -06:00
Danny Ryan
ab44cbe380
Update specs/core/1_shard-data-chains.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-02-10 15:45:57 -06:00
vbuterin
9bba3362eb
Update specs/core/1_shard-data-chains.md
2019-02-10 15:45:47 -06:00
vbuterin
9e66b069b2
Update specs/core/1_shard-data-chains.md
2019-02-10 15:45:16 -06:00
Danny Ryan
ad3f43a4a6
Update specs/core/1_shard-data-chains.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-02-10 15:45:06 -06:00
vbuterin
046119fb2e
Update specs/core/1_shard-data-chains.md
2019-02-10 15:44:58 -06:00
Danny Ryan
181dc183b6
Merge branch 'dev' into vbuterin-patch-6
2019-02-10 13:12:01 -07:00
Dean Eigenmann
2944a7ddfc
Renamed `Helpers` -> `Variables`, seems to make more sense ( #560 )
2019-02-10 16:19:12 +00:00
vbuterin
1f97206dcf
Updated phase 1: commitments ( #579 )
...
See #338 and #529 for discussion.
2019-02-10 16:17:21 +00:00
vbuterin
abed5ffdae
Updated phase 1: fork choice rule ( #586 )
...
Adds the crosslink committee to the fork choice rule. This is useful because it means that even if a proposal committee is byzantine and attempts to prevent a crosslink via a "balance attack" (alternating between chain A and chain B being the canonical chain), the crosslink committee can force the equilibrium to flip to one side or the other.
2019-02-10 16:16:22 +00:00
vbuterin
8097b2373b
Added deduplication
2019-02-10 00:09:34 -06:00
Danny Ryan
a712abfb2a
Merge pull request #589 from Nashatyrev/dev
...
Silently skip deposits with invalid proof in process_deposit
2019-02-09 08:22:38 -07:00
Danny Ryan
7886d96186
change proof_is_valid to exit condition
2019-02-09 07:21:38 -08:00
vbuterin
e48010b77b
Change var name to avoid confusing the reader into thinking the `valid_proof` variable contains a valid proof as opposed to just being a bool.
...
Co-Authored-By: Nashatyrev <Nashatyrev@users.noreply.github.com>
2019-02-09 11:10:54 +03:00
vbuterin
0157aa039c
Change var name to avoid confusing the reader into thinking the `valid_proof` variable contains a valid proof as opposed to just being a bool.
...
Co-Authored-By: Nashatyrev <Nashatyrev@users.noreply.github.com>
2019-02-09 11:10:03 +03:00
vbuterin
65c5a1a1b7
Fixed get_persistent_committee
2019-02-08 22:10:54 -06:00
Danny Ryan
e0d8cf4268
Update specs/core/1_shard-data-chains.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-02-08 22:07:14 -06:00
Danny Ryan
8dd111b7e6
Update specs/core/1_shard-data-chains.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-02-08 22:06:46 -06:00
Danny Ryan
ad0ff80be2
Update specs/core/1_shard-data-chains.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-02-08 22:06:03 -06:00
vbuterin
019fe8953e
Fixed as per @djrtwo's comments
2019-02-08 22:02:55 -06:00
vbuterin
36d5120deb
Initialize deposit index
2019-02-08 19:38:09 -06:00
vbuterin
057364a7d4
Add mandatory deposit index ordering
...
Co-requisite with #589
2019-02-08 19:37:34 -06:00
Danny Ryan
663d38e9c8
simplify get_next_epoch_committee_assignment by adding registry_change arg
2019-02-08 11:54:17 -07:00
Danny Ryan
334d47714d
fix a couple of nitpicks before release
2019-02-08 10:35:57 -07:00
Anton Nashatyrev
f9eaab1d04
Silently skip deposits with invalid proof in process_deposit
2019-02-08 18:04:32 +03:00
vbuterin
e5bd78e5e6
Persistent committee refactors
2019-02-08 04:08:52 -06:00
vbuterin
65ec418213
A few more cleanups
2019-02-08 03:54:02 -06:00
vbuterin
47c396f3f8
Break lets into separate lines
2019-02-08 03:50:00 -06:00
vbuterin
410372ff0e
Proposal committee -> persistent committee
2019-02-08 03:48:58 -06:00
Hsiao-Wei Wang
2cff0e6b7a
Use the new `bytesN` SSZ object
...
`hash32` -> `bytes32`
['uint384'] -> `bytes96`
2019-02-08 16:46:50 +08:00
Danny Ryan
5a1b2c29f2
Update specs/core/1_shard-data-chains.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-02-08 01:08:30 -06:00
Danny Ryan
5e84d7e3ff
Update specs/core/1_shard-data-chains.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-02-08 01:08:15 -06:00
Danny Ryan
bdd7dc106a
Update specs/core/1_shard-data-chains.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-02-08 01:08:01 -06:00
Danny Ryan
a1f542b674
Update specs/core/1_shard-data-chains.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-02-08 01:07:46 -06:00
Danny Ryan
fb90fd7ac3
Update specs/core/1_shard-data-chains.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-02-08 01:07:31 -06:00
Danny Ryan
6d9581281d
change latest_crosslink_root to latest_crosslink in validator guide
2019-02-07 21:25:47 -07:00
Danny Ryan
08274fe7bf
Merge branch 'dev' into vbuterin-patch-9
2019-02-07 21:23:46 -07:00
Danny Ryan
f0cbacb828
add missing .
2019-02-07 20:22:28 -08:00
Danny Ryan
0ad2ffab50
Merge branch 'dev' into big-to-little
2019-02-07 21:00:36 -07:00
Danny Ryan
87dc8a6c70
Merge pull request #576 from ethereum/vbuterin-patch-5
...
Introduce swap-or-not shuffle
2019-02-07 20:57:02 -07:00
vbuterin
1c6ccac8fc
SHUFFLE_ROUND_COUNT as global constant
2019-02-07 21:55:33 -06:00
Danny Ryan
f797826ee2
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2019-02-07 21:51:56 -06:00
vbuterin
086df84bdc
Attestation data contains latest crosslink, not just latest crosslink data
...
The reason to do this is that it makes it calculable from inside an attestation how many epochs the attestation spans over, which is needed for proof of custody reasons. It's a relatively small change and so arguably easier to do now than to do as a patch in phase 1.
Note that this changes the meaning of latest_crosslink.epoch, from the epoch when the latest crosslink was included to the epoch that the latest crosslink was for. This affects the line:
* `state.latest_crosslinks[shard].epoch > state.validator_registry_update_epoch` for every shard number `shard` in `[(state.current_epoch_start_shard + i) % SHARD_COUNT for i in range(get_current_epoch_committee_count(state))]` (that is, for every shard in the current committees)
But this may actually make it _more_ correct, as it means that in the case where >512 shards are processed per epoch, and so a committee from the previous epoch could get finalized in the current epoch, that would no longer count toward every shard having received a "new" crosslink.
2019-02-07 19:34:54 -06:00
Hsiao-Wei Wang
1582413151
Merge pull request #583 from mratsim/continue-message_hash-bls-changes
...
Continue message hash changes on non-bls part of the specs
2019-02-08 05:24:52 +08:00
mratsim
ca098f8cfa
Prevent changing another TOC
2019-02-07 22:19:04 +01:00
mratsim
fd3d4a5105
Don't change TOC
2019-02-07 22:15:55 +01:00
Hsiao-Wei Wang
89b9894328
Fix type hinting
2019-02-08 05:15:42 +08:00
Hsiao-Wei Wang
911e4f104b
Add `bytes_to_int`
2019-02-08 05:12:58 +08:00
mratsim
cf7ebe9ad3
`message` to `message_hash` in the rest of the spec (followup https://github.com/ethereum/eth2.0-specs/pull/580 )
2019-02-07 22:09:41 +01:00
Hsiao-Wei Wang
859bf62484
Revert and refactor
2019-02-08 05:08:25 +08:00
Danny Ryan
e8ec977168
Merge pull request #548 from ethereum/hwwhww/typo_hash_tree_root
...
Fix typo `tree_hash_root` -> `hash_tree_root`
2019-02-07 13:51:18 -07:00
Danny Ryan
cc2df634cd
Merge pull request #549 from ethereum/registry_change
...
Misc fixes of `get_next_epoch_crosslink_committees`
2019-02-07 13:31:57 -07:00
Hsiao-Wei Wang
e4f5efadb7
Fix `first_committee_at_slot`
2019-02-08 04:03:13 +08:00
Danny Ryan
d4901be198
get_next_epoch_committee_assignments returns slot and is_proposer
2019-02-07 11:48:36 -07:00
Danny Ryan
3f3472087a
change message to message_hash in bls spec
...
addresses #572
2019-02-07 10:37:01 -08:00
Hsiao-Wei Wang
aa9f9fc9be
amend
2019-02-07 19:18:39 +08:00
Hsiao-Wei Wang
70e482be28
Add vbuterin's optimization and some formatting
2019-02-07 19:14:58 +08:00
vbuterin
92514716fb
Update 0_beacon-chain.md
2019-02-06 23:32:20 -06:00
vbuterin
65255e53c4
shuffle -> get_permuted_index
2019-02-06 23:29:24 -06:00
Danny Ryan
b3db7b0394
big to little in shuffle
2019-02-06 20:32:05 -08:00
vbuterin
8597cbef1f
Updated phase 1: shard block structure
2019-02-06 20:32:56 -06:00