vbuterin
545e35e4b1
Clarified "logarithmic"
2018-11-23 15:10:03 -05:00
vbuterin
ee40888d2e
Fix to fixes
2018-11-23 15:01:15 -05:00
vbuterin
bb6c81beb0
Merge pull request #158 from ethereum/JustinDrake-patch-1
...
Various fixes regarding PoW receipt roots
2018-11-23 14:58:03 -05:00
vbuterin
6f44db789f
s/=/==/
2018-11-23 14:57:43 -05:00
Jacek Sieka
70b181fe32
Small fixes
...
* pick out committee when getting proposer
* avoid unsigned underflow when chain is starting (since we're using
uint)
2018-11-23 12:57:17 -06:00
Hsiao-Wei Wang
252a24cff0
Minor fix: markdown grammar and typing hints
2018-11-24 01:38:57 +08:00
Justin
ea31ff3cea
Fix minor bug in `ghost_lmd`
2018-11-23 16:05:30 +00:00
Justin
b76eae8a71
Update 0_beacon-chain.md
2018-11-23 15:37:37 +00:00
Justin
361bcd6be4
More polishing to fork choice rule
2018-11-23 15:23:22 +00:00
Justin
92981e9714
Started cleaning up fork choice rule definition
2018-11-23 14:46:25 +00:00
vbuterin
f3094e179e
Resolved Justin's questions
2018-11-23 08:54:24 -05:00
Hsiao-Wei Wang
2375e0ce28
Merge branch 'master' into vbuterin-patch-6
2018-11-23 20:37:23 +08:00
Hsiao-Wei Wang
e7852de0c2
Merge branch 'master' into vbuterin-patch-1
2018-11-23 20:06:43 +08:00
Hsiao-Wei Wang
f513e2022e
Merge pull request #154 from terenc3t/patch-11
...
Typo in Vyper contract
2018-11-23 19:57:54 +08:00
4000D
e2193b1324
fix hyperlink
2018-11-23 13:54:11 +09:00
Justin
50458c1d31
Various fixes regarding PoW receipt roots
...
Question: What happens if the block proposer at the `POW_RECEIPT_ROOT_VOTING_PERIOD` boundary puts a bad receipt root? Does this give too much power to that block proposer?
2018-11-22 23:09:36 +00:00
Terence Tsao
925ac0ecc0
use convert function in Vyper
2018-11-22 06:32:15 -10:00
vbuterin
bc53f0e386
Fork choice rule
...
Added the LMD GHOST fork choice rule.
2018-11-22 08:24:20 -05:00
Hsiao-Wei Wang
f1b78cf01e
ss: Add CC0 copyright declaration ( #155 )
2018-11-22 17:28:24 +09:00
terence tsao
fec46f9e09
Typo in Vyper contract
2018-11-21 18:37:14 -10:00
vbuterin
745524b762
Added whistleblower reward ( #144 )
...
* Added whistleblower reward
* Update 0_beacon-chain.md
* Fixed proposer.deposit += ...
2018-11-21 15:21:07 +09:00
vbuterin
b4dfdb5ed4
Partial edits....
2018-11-20 16:49:43 -05:00
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
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
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
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
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
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
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