Commit Graph

276 Commits

Author SHA1 Message Date
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
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
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 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 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 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 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
vbuterin 1276f1334b
Update beacon-chain.md 2018-10-30 04:45:28 -04:00
mratsim 0064043e14 Mention that lists are of elements of homegeneous type 2018-10-27 13:36:10 +02:00
Danny Ryan ff81a3032f
fix small error in comment 2018-10-25 15:51:24 +02:00
Danny Ryan e3931f1e72
minor type/clarification in adding validator 2018-10-25 09:43:47 +02:00
terence tsao 9064cfaddb
use int for type hints 2018-10-24 10:14:24 -07:00
terence tsao 203eeba2b6
update change_validator 2018-10-24 09:04:40 -07:00
terence tsao 40d0076b27
clean up possible rework/additions 2018-10-22 13:11:54 -07:00
Yutaro Mori bfe4caa379
minor typo 2018-10-20 17:07:45 +09:00
vbuterin 5d36ef4799
Update beacon-chain.md 2018-10-19 16:01:15 -04:00
vbuterin 8f3318813f
Update beacon-chain.md 2018-10-19 12:06:25 -04:00
vbuterin 3e7adb3981
Moved randao_mix from crystallized to active state 2018-10-19 12:05:00 -04:00
vbuterin 3e57bd5266
Update beacon-chain.md 2018-10-18 15:47:54 -04:00
Vitalik Buterin b4b60ae16a
Assign validators to persistent committees for shard block production 2018-10-18 13:54:57 -04:00
Alex Stokes 17fd4c7669 add code representation of utility function described in text for style consistency 2018-10-17 19:00:45 -07:00
Danny Ryan bb76b05f7d
fix merge conflicts 2018-10-17 12:52:48 -05:00
Danny Ryan 3697ebccaa
Merge branch 'master' into JustinDrake-patch-3 2018-10-17 12:50:23 -05:00
Danny Ryan 19a561cd8d
Merge pull request #87 from ethereum/beacon-block
be explicit about 'beacon block'
2018-10-17 11:34:57 -05:00
Danny Ryan edf0924e83
Merge pull request #86 from ethereum/fix-justified-attestation
clarify attestation justified slot validity conditions
2018-10-17 11:34:33 -05:00
Danny Ryan 75614224c7
be more explicit about attester role wrt shards 2018-10-17 09:52:03 -05:00
Danny Ryan 9b9cfae117
Add explicit setting of parent and parent_hash 2018-10-17 09:48:17 -05:00
Danny Ryan d0501631a4
added missing periods 2018-10-17 09:45:15 -05:00
Danny Ryan 0e86ab8206
Merge pull request #39 from ethereum/test-format
Document for general test format
2018-10-16 20:32:42 -05:00
Danny Ryan 8aeb55d4ea
a note about wip 2018-10-16 17:50:56 -05:00
Danny Ryan 934dbf8888
be explicit where needed about block meaning 'beacon block' 2018-10-16 17:03:29 -05:00
Danny Ryan 840d3f11ad
clarify the validity conditions for attestation.justified_slot and justified_block_hash 2018-10-16 16:37:59 -05:00
Danny Ryan 13e155a40f
Merge branch 'master' into JustinDrake-patch-3 2018-10-16 16:29:20 -05:00
Danny Ryan 7945ce58d5
update recently_changed flag comment 2018-10-16 16:22:05 -05:00
Danny Ryan dc2317b010
Merge branch 'master' into JustinDrake-patch-2 2018-10-16 13:03:14 -05:00
Danny Ryan d0ff8cdece
Merge pull request #83 from ethereum/JustinDrake-patch-1
Move from signed integers to unsigned integers
2018-10-16 13:00:26 -05:00
Danny Ryan f3ea9bf43c
Merge pull request #44 from ethereum/fix-recent_block_hashes
Fix `recent_block_hashes`
2018-10-16 10:36:31 -05:00
Danny Ryan 9135fd9085
fix small typo 2018-10-16 10:35:09 -05:00
Justin 8e8eed23f3
Misc minor cleanups 2018-10-16 13:50:31 +01:00
Justin 41cf454fe9
Add INITIAL_FORK_VERSION constant 2018-10-16 13:30:38 +01:00
Justin ef0c773fe7
Rename `version` to `fork_version`
For consistency with `pre_fork_version` and `post_fork_version`.
2018-10-16 13:27:29 +01:00
Justin fdf8162c59
Move from signed integers to unsigned integers 2018-10-16 12:55:03 +01:00
Danny Ryan 11012448fa
Merge pull request #65 from sigp/shuffling_update
Fix shuffle() function errors
2018-10-15 22:08:40 -05:00
Danny Ryan ec54cab28f
Merge pull request #81 from rawfalafel/patch-2
Clarify description in ancestor_hashes
2018-10-15 22:05:16 -05:00
terence tsao 873e3b0574
Update possible rework/additions 2018-10-15 18:20:58 -07:00
Yutaro Mori 38f2ae1a74
Update beacon-chain.md 2018-10-16 10:13:32 +09:00
Yutaro Mori 6334e5328b
Proposal to clarify `ancestor_hashes` description
`i'th ancestor` really means `most recent ancestor that is a multiple of 2**i`, not `go up the chain i times`.

Maybe I'm wrong though :)
2018-10-16 10:11:50 +09:00
Paul Hauner 3791cb5a5d
Update shuffle() as per review
- Add `rand_bytes`
- Change `for` loop condition for readability and generality.
- Ensure consistency of comment spacing
- Update comments
2018-10-16 11:17:34 +11:00
Danny Ryan 2ce1ddd14c
Merge pull request #69 from ethereum/vbuterin-patch-7
Add RANDAO multi-hashing
2018-10-15 13:14:59 -05:00
Danny Ryan 6aeb382132
change current_block to block.slot 2018-10-15 13:14:45 -05:00
Danny Ryan f9cb4a6e9b
Merge branch 'master' into vbuterin-patch-1 2018-10-15 12:25:32 -05:00
Danny Ryan 0e1c733254
small typo 2018-10-15 10:22:29 -05:00
vbuterin aacaefbd2b
Update to make @djrtwo happy 2018-10-14 22:51:51 -04:00
Danny Ryan d7458bf201
Merge pull request #78 from Mikerah/patch-1
Adding first completed version of ssz in JS
2018-10-14 20:23:55 -05:00
vbuterin 2f2fbcabee
Update beacon-chain.md 2018-10-14 21:08:35 -04:00
Danny Ryan 9f25eea9e3
Merge pull request #73 from jamesray1/patch-1
Re-add removed rationale for min. committee size
2018-10-14 19:45:15 -05:00
Mikerah cf28f1a784
Adding first completed version of ssz in JS to list of ssz implementations 2018-10-14 16:29:47 -04:00
Danny Ryan 17ba99ed8f
minor change in language 2018-10-14 09:20:51 -05:00
Danny Ryan 48d5c1d12c
minor change to comment 2018-10-14 08:55:01 -05:00
Danny Ryan cdabb4b205
remove extra def of clamp 2018-10-14 08:32:10 -05:00
Danny Ryan 4191b0089a
Merge branch 'master' into vitalik6 2018-10-14 08:30:52 -05:00
Danny Ryan eb93cef16d
add `validator_change_slot` to startup init vars 2018-10-14 08:03:08 -05:00
Yutaro Mori 0dc597a11c Remove remaining usage of dynasty 2018-10-14 12:31:06 +09:00
James Ray 73854e8598
Re-add removed rationale for min. committee size 2018-10-12 19:22:12 +11:00
vbuterin 2d3b13ccf4
Add version to logout message
Resolves https://github.com/ethereum/eth2.0-specs/issues/57
2018-10-12 00:45:58 -04:00
vbuterin b9c922ce4b
Merge pull request #68 from ethereum/vbuterin-patch-6
Add bool to simple serialize
2018-10-11 20:21:04 -04:00
vbuterin 0cd41bc578
Rework validator exiting, add min balance clause 2018-10-11 14:14:48 -04:00
vbuterin c827a26ecf
Add RANDAO multi-hashing
Requires more hashes in a RANDAO reveal the more time passes. This greatly reduces the chance that a RANDAO reveal accidentally revealed during an orphaned block will be usable for future blocks.
2018-10-11 13:57:30 -04:00
vbuterin fe74c7e299
Stop changing the crystallized state in the RANDAO reveals. 2018-10-11 13:06:37 -04:00