Commit Graph

4083 Commits

Author SHA1 Message Date
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
vbuterin 20358f8d18
Updated the PR to include deposits
Includes https://github.com/ethereum/eth2.0-specs/issues/71#issuecomment-435837594
2018-11-09 09:23:33 -05:00
terence tsao 899f86adac typo in reshuffle proposer (#118) 2018-11-09 11:40:21 +01:00
Danny Ryan b76275482d
extend ssz hash type to arbitrary lengths (#116)
* refactor hash in simple serialize to support arbitrary byte length

* make comment clearer

* add deserialization of hashN

* formatting

* remove specific hash examples
2018-11-09 11:39:03 +01:00
vbuterin fa9c29d522
Merge pull request #121 from terenc3t/patch-9
helpful comment for persistent committee shuffling
2018-11-08 18:00:22 +01:00
terence tsao 1296a4863e
helpful comment for persistent committee shuffling 2018-11-08 08:28:44 -08:00
vbuterin 024ba75fb3 Changed crosslink mechanics (#111)
* Changed crosslink mechanics

* Update beacon-chain.md

* make start_shard clearer
2018-11-07 17:47:27 +01:00
Julian Meyer b8d85ef8bd get_block_hash gets the block hash, not the block (#117) 2018-11-06 23:26:29 +01:00
terence tsao a6cf5c4da1 typos from persistent shard committee changes (#113) 2018-11-06 10:43:21 +01:00
Danny Ryan 9ee65b2f22
add gitter badge to readme (#114)
* add gitter badge to readme

* fix gitter badge
2018-11-06 09:02:55 +01:00
Danny Ryan 59f32978d4
Merge pull request #102 from ralexstokes/master
Add spec for {de,}serializing ssz container types
2018-11-05 14:05:07 +01:00
Danny Ryan 1d817608fb
update deserialize arg ordering in container type 2018-11-05 14:04:40 +01:00
Danny Ryan ba25653da7
Merge pull request #89 from ethereum/vitalik7
Assign validators to persistent committees for shard block production
2018-11-05 13:49:19 +01:00
Danny Ryan 3beab6a8db
Merge branch 'master' into vitalik7 2018-11-05 13:48:50 +01:00
Danny Ryan 189d44f5a5
move validator_set_last_changed to the validator set change section 2018-11-05 13:45:08 +01:00
Danny Ryan 236ac26867
rename var 2018-11-05 13:41:03 +01:00
Danny Ryan cc910d831a
cleanup shard reassignment logic 2018-11-05 13:38:25 +01:00
Vitalik Buterin eb1e8311c3
Implemented withdrawal rate limit in place of wihdrawal delay 2018-11-05 07:37:07 -05:00
Danny Ryan a6f8bdea66
Merge pull request #109 from ralexstokes/clean-up-unused-var
remove unused variable
2018-11-04 23:28:48 +01:00
Danny Ryan 26a92c4aaa
Merge pull request #85 from ethereum/JustinDrake-patch-3
Misc minor cleanups
2018-11-04 23:28:13 +01:00
Danny Ryan d44eb8eccc
remove unnecessary comment 2018-11-04 23:27:08 +01:00
Danny Ryan 83c624d0e8
add back in get_active_validator_indices 2018-11-04 23:26:24 +01:00
Danny Ryan 41105c28d0
Merge branch 'master' into JustinDrake-patch-3 2018-11-04 23:22:11 +01:00
Alex Stokes 9cf4f0c86e remove unused variable 2018-11-04 19:23:10 +03:00
Alex Stokes 7ad16d4282 Merge branch 'master' of https://github.com/ralexstokes/eth2.0-specs 2018-11-04 19:18:09 +03:00
Alex Stokes 56066260ad formatting 2018-11-04 19:13:37 +03:00
Alex Stokes cf70ed0b7c Adds specification for {de,}serializing container types 2018-11-04 19:13:37 +03:00
Danny Ryan 0df4141f05
make bytes more uniform 2018-11-01 08:08:23 +01:00
vbuterin 2fedaf0824
Chain initialization and main chain block inclusion 2018-10-31 03:44:18 -04:00
Danny Ryan 9b75191ece
Merge pull request #104 from mratsim/lists-homogeneous-types
Mention that lists are of elements of homogeneous type
2018-10-30 21:16:08 +01:00