4012 Commits

Author SHA1 Message Date
Hsiao-Wei Wang
98312f40b5
Merge pull request #140 from status-im/simplify-merkle-tree
simplify merkle tree chunking
2018-11-20 23:19:04 +09:00
Hsiao-Wei Wang
a217e9b32c
tree_ssz: fix extra parens
Co-Authored-By: arnetheduck <arnetheduck@gmail.com>
2018-11-20 08:12:56 -06:00
Danny Ryan
addd345b36
Merge branch 'master' into vbuterin-patch-1 2018-11-20 17:41:18 +09:00
vbuterin
396d798500 Separated out proposer from attesters (#143)
* Separated out proposer from validators

* Update 0_beacon-chain.md

* Update specs/core/0_beacon-chain.md

Co-Authored-By: vbuterin <v@buterin.com>

* Update specs/core/0_beacon-chain.md

Co-Authored-By: vbuterin <v@buterin.com>

* get_proposer -> get_beacon_proposer, block -> slot

* Move proposer sig to the end of a block

* Update specs/core/0_beacon-chain.md

Co-Authored-By: vbuterin <v@buterin.com>

* sig -> signature

* add type hints for get_beacon_proposer
2018-11-20 16:40:04 +09:00
Hsiao-Wei Wang
00f7554ec4
Remove justified_streak 2018-11-20 11:18:58 +09:00
vbuterin
e925fe5705
Forgot to change validators -> state.validators 2018-11-19 20:15:10 -05:00
vbuterin
54217772fe
Added domain separation 2018-11-19 20:13:58 -05:00
vbuterin
eb29b28dc5
Update 0_beacon-chain.md 2018-11-19 15:59:15 -05:00
vbuterin
331d456077
Merge pull request #150 from ethereum/vbuterin-patch-10
Replace single specials limit with per-type limit
2018-11-19 15:57:27 -05:00
vbuterin
1eaf15cf73
Replace single specials limit with per-type limit 2018-11-19 11:14:18 -05:00
vbuterin
2fead870ad
Replace cycles with epochs
Also adjusted constants to keep interest rates and the quadratic leak period the same.

Also, did some simplifications of the cycle calculation procedure. Make the decision to remove automatic registration of a validator as a proposer when they join, because that can just happen on its own due to the reshuffling procedure.
2018-11-19 11:07:41 -05:00
vbuterin
21d120e771
Remove uint32 use. 2018-11-19 07:00:03 -05:00
Danny Ryan
71451e0a0b
Merge branch 'master' into vbuterin-patch-6 2018-11-19 17:59:45 +09:00
Hsiao-Wei Wang
a274432889
Merge pull request #112 from ethereum/vitalik9
Implementation of alternate withdrawal mechanism (issue #91)
2018-11-19 12:51:57 +09:00
Hsiao-Wei Wang
54eeb49831
crystallized_state -> state 2018-11-19 12:48:12 +09:00
Hsiao-Wei Wang
c3e2c2a46d
Clean up leftover of CrystallizedState 2018-11-19 12:17:50 +09:00
Danny Ryan
2a077fbecc
init current_exit_seq in on_startup 2018-11-19 12:16:37 +09:00
Hsiao-Wei Wang
e5a9d4e547
Merge pull request #148 from ethereum/hww/remove_crystallized
Clean up leftover of CrystallizedState
2018-11-19 12:12:49 +09:00
Hsiao-Wei Wang
415ac7a3d7
Clean up leftover of CrystallizedState 2018-11-19 11:51:23 +09:00
Hsiao-Wei Wang
d7ead98ea4
Merge branch 'master' into vitalik9 and fix conflicts 2018-11-19 11:23:50 +09:00
Ben Edgington
c961b3dca8 Add ToDo for state_root specification (#137) 2018-11-19 11:05:53 +09:00
vbuterin
3bdd56b0f8 Fix bugs in #146 (#147)
* Fix bugs in #146

* Update 0_beacon-chain.md

* cleanup  deposit params
2018-11-19 11:02:26 +09:00
vbuterin
1f4aa90788
Merge pull request #107 from ethereum/vbuterin-patch-1
Chain initialization and main chain block inclusion
2018-11-18 07:10:17 -05:00
vbuterin
d889eec555
Oops, accidental duplication 2018-11-18 07:09:50 -05:00
vbuterin
5dc66c328c
oops 2018-11-18 07:06:46 -05:00
vbuterin
ca4b670b11
Merge branch 'master' into vbuterin-patch-1 2018-11-18 07:06:01 -05:00
Danny Ryan
8a2e1d55a5
fix bls12-381 to be in standard notation 2018-11-18 10:34:23 +09:00
vbuterin
db9fdb9b72
Switch from alt_bn255 to BLS12-381 2018-11-17 18:20:39 -05:00
Hsiao-Wei Wang
9e0d38713e
Merge pull request #138 from ethereum/vbuterin-patch-3
Move specials into block processing, and clean up specification
2018-11-18 08:02:56 +09:00
Jacek Sieka
ea7ad28298
simplify merkle tree chunking
* pack small items tightly to fit more items in single chunk, decreasing
the number of hash operations needed
* remove chunk padding - hash algorithm will pad to its own block size
anyway
* express data length in number of items instead of binary bytes at leaf
level (equivalent)
2018-11-17 07:59:11 -06:00
vbuterin
10c375244b
Cleaned up LOGOUT 2018-11-17 07:51:25 -05:00
Danny Ryan
06cf704e83
fix typo in slashing special 2018-11-17 13:52:49 +09:00
vbuterin
1664414852
Fixed as per hww's comments 2018-11-16 19:41:09 -05:00
vbuterin
eb24f9482d
int128 -> int64 2018-11-16 12:20:59 -05:00
vbuterin
57c2deefbb
Added description of genesis block 2018-11-16 11:41:59 -05:00
vbuterin
c9c85e8645
Added max specials count. 2018-11-16 10:48:57 -05:00
vbuterin
65dc333549
Move specials into block processing, and clean up specification
Moves the procedure for handling specials into the per-block processing loop. Cleans up the specification for handling them to be more unambiguous, and changes the formats to be more readable and simpler to implement.
2018-11-16 07:54:03 -05:00
Danny Ryan
ac207e4cc8
minor var fix (#136) 2018-11-16 08:23:28 +09:00
Danny Ryan
9825cc98fe
Update 0_beacon-chain.md 2018-11-16 08:16:35 +09:00
Danny Ryan
024852c024
Merge branch 'master' into vbuterin-patch-1 2018-11-16 08:13:33 +09:00
Danny Ryan
0f6ec916c7
add design goals and links to phases in readme (#132)
* add design goals and links to phases in readme

* Update README.md
2018-11-16 07:52:06 +09:00
Chih Cheng Liang
2dfa7bc652 Fix a broken markdown table (#134) 2018-11-16 07:51:32 +09:00
vbuterin
5ed4392b54 Minimal replacement of active/crystallized state with single state (#122)
* Minimal replacement of active/crystallized state with single state

* Update specs/beacon-chain.md

Co-Authored-By: vbuterin <v@buterin.com>

* Update specs/beacon-chain.md

Co-Authored-By: vbuterin <v@buterin.com>

* State -> BeaconState

* Update beacon-chain.md

* Update 0_beacon-chain.md
2018-11-15 13:20:25 +00:00
vbuterin
707adddc92 Added tree hashing algorithm (#120)
* Added tree hashing algorithm

* Update simple-serialize.md

* add one more ref to tree_hash

* Add the zero-item special case

* list_to_glob to handle empty list
2018-11-15 13:12:34 +00:00
Ben Edgington
86ec833172 Remove MIN_BALANCE definition (#131)
MIN_BALANCE is not used - I'm guessing it was replaced by MIN_ONLINE_DEPOSIT_SIZE.
2018-11-15 12:28:47 +00:00
vbuterin
7d5436166e Add shard blocks, shard data roots and how data is computed into cros… (#123)
* Add shard blocks, shard data roots and how data is computed into crosslinks

Includes:

* Shard block structure
* Shard block header verification rule
* Shard block fork choice rule
* Shard block body verification rule
* Crosslink verification rule

Possible simplification: require `calc_block_maxbytes` to always output an exact power of two; if we desire the average maxbytes to be smooth, we can simply make it a pseudorandom chose between powers. This reduces some of the padding complexity.

* create separate files for phases (#125)

* create separate files for phases

* fix links

* add shard block pre processing conditions

* cleanup

* remove 'essentially'

* Updated handling for beacon chain skipping slots.

* Handle missing slots more

* modify attestation validity rule for crosslink hash
2018-11-14 21:01:57 +00:00
terence tsao
2a1150e5b8 fixed get_active_validator_indices typo (#126)
* get_active_validator_indices fixes

* add a newline
2018-11-13 19:24:49 +00:00
vbuterin
add815d8f8
Fixed a bunch of comments. 2018-11-13 08:57:24 -05:00
Danny Ryan
6034dbf4ff
update randao_last_change and fix some var names (#115)
* update randao_last_change and fix some var names

* fix some special record stuff
2018-11-11 09:15:43 +00:00
vbuterin
f7a8eb5a3e
Fixed bug in previous version
Validators cannot simply be "popped out" of the list because it's super-important for validator indices to be immutable.

Instead, the validator stays until a new run of `add_validator` swaps it out.
2018-11-09 15:31:50 -05:00