Commit Graph

328 Commits

Author SHA1 Message Date
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
Danny Ryan d6504fb51f
Merge branch 'master' into vitalik5 2018-10-11 10:45:10 -05:00
vbuterin 1c25917622
Add bool to simple serialize 2018-10-11 09:51:35 -04:00
vbuterin 79f2ecb0d9
Update beacon-chain.md 2018-10-11 09:45:33 -04:00
vbuterin 57efc20ed7
Update beacon-chain.md 2018-10-11 09:43:52 -04:00
Danny Ryan c519608eec
Merge branch 'master' into fix-recent_block_hashes 2018-10-11 08:37:00 -05:00
Paul Hauner 6700f283d5
Fix shuffle() function errors
- `rand_max` now represents the greatest value returned by the RNG,
instead of the length of the range.
 - Loop condition fixed to stop infinite loop.
 - Comments updated
2018-10-11 16:56:46 +11:00
Hsiao-Wei Wang 31eb7e9a05
Rename rand_max to sample_max 2018-10-11 11:29:29 +08:00
Hsiao-Wei Wang 39a5bac337
PR feedback and minor fix 2018-10-11 11:29:29 +08:00
Hsiao-Wei Wang 80a61c1c62
PR feedback and some minor fix 2018-10-11 11:29:29 +08:00
Hsiao-Wei Wang 0cc1b6c4a4
fix shuffle 2018-10-11 11:27:19 +08:00
Hsiao-Wei Wang f1da3c55cd
minor fix 2018-10-11 11:27:19 +08:00
Hsiao-Wei Wang 12a1bd2473
Refactor the sample code and fix #47 2018-10-11 11:27:10 +08:00
terence tsao 9abb1a0e41
fixed typo in change_validators 2018-10-10 11:16:13 -07:00
Yutaro Mori b62c8c9db1
Fix lighthouse link 2018-10-10 16:14:53 +09:00
Vitalik Buterin 20e31b2930
Remove multiple slots per committee option 2018-10-09 19:26:03 -04:00
Vitalik Buterin e66cd35d0e
Removed all uses of the word dynasty, and replaced the functionality of dynasties with other variables. 2018-10-09 19:19:37 -04:00
Danny Ryan cbd254a309
replace total_blance_attestable_to_h with total_committee_balance 2018-10-08 20:42:16 -05:00
Danny Ryan 753219ba6a
Merge branch 'master' into JustinDrake-patch-4 2018-10-08 20:40:36 -05:00
Danny Ryan 0445bff1b1
Merge branch 'master' into JustinDrake-patch-2 2018-10-08 14:10:15 -05:00
Danny Ryan ef0da3ce28
Merge branch 'master' into fix-recent_block_hashes 2018-10-08 14:02:26 -05:00
Danny Ryan 169f031514
Merge branch 'master' into codes-flags-types 2018-10-08 13:47:17 -05:00
Justin 8f65c85455
Update beacon-chain.md 2018-10-06 13:32:19 +01:00
Justin fedfe61d6c
Update beacon-chain.md 2018-10-06 13:02:08 +01:00
Danny Ryan 48b0b523a8
Merge pull request #49 from ethereum/JustinDrake-patch-3
Make status codes consistent with "active" validators
2018-10-05 12:06:45 -04:00
Danny Ryan fddd50f8ab
Merge pull request #46 from ethereum/JustinDrake-patch-1
Fix typo calling AttestationSignedData
2018-10-05 12:05:46 -04:00
Danny Ryan d495b0ec4f
clear up a comment in AttestationSignedData 2018-10-05 12:05:09 -04:00
Mikhail Kalinin 64ba1aa931 Get rid of redundant recent_block_hashes entry 2018-10-05 21:16:02 +06:00
Justin 623d3cd31b
Cleanups in "State recalculations" 2018-10-05 12:05:08 +01:00
Justin ef4b2c4542
Update beacon-chain.md 2018-10-05 12:01:03 +01:00
Justin e3c1eeb569
Update beacon-chain.md 2018-10-05 11:49:18 +01:00
Justin cb6e94a115
Make status codes consistent with "active" validators 2018-10-05 11:38:30 +01:00
Justin 1cbde6f3c8
Change balances to Gwei
See discussion here https://github.com/ethereum/eth2.0-specs/issues/34
2018-10-05 11:34:38 +01:00
Justin d6395fa678
Fix typo calling AttestationSignedData 2018-10-05 11:25:52 +01:00
Justin 9ee17787d2
Homogenise AttestationSignedData data structure 2018-10-05 11:20:02 +01:00
Danny Ryan f003d6b753
Merge branch 'master' into vitalik3 2018-10-04 18:55:43 -05:00
Danny Ryan 4f929daaac
Merge branch 'master' into data-structures 2018-10-04 18:29:03 -05:00
Danny Ryan 57cbc5434c
[fix-recent_block_hashes] remove min requirement from append_to_recent_block_hashes 2018-10-04 18:25:24 -05:00
vbuterin bf3fe932a2
Update casper_sharding_v2.1.md 2018-10-04 17:05:38 -04:00
Justin b4f2317692
Update beacon-chain.md 2018-10-04 21:59:36 +01:00
Danny Ryan 5b31268abc
[fix-recent_block_hashes] fix formatting 2018-10-04 12:53:53 -05:00
Danny Ryan dc01cb0f4d
[fix-recent_block_hashes] fix issue with recent_block_hashes when slots are skipped 2018-10-04 12:43:30 -05:00
Justin 5f40856606
Update beacon-chain.md 2018-10-04 14:39:56 +01:00
Justin b60cbd9c33
Update beacon-chain.md 2018-10-04 14:26:13 +01:00
Justin 5306c1e728
Update beacon-chain.md 2018-10-04 14:16:31 +01:00
Danny Ryan fbd4c3664f Merge branch 'vitalik2' of github.com:ethereum/eth2.0-specs into vitalik2 2018-10-04 07:30:59 -05:00
Danny Ryan 0f5fca7e03 Merge branch 'master' into vitalik2 2018-10-04 07:30:54 -05:00
Justin 7749c28bd9
Update beacon-chain.md 2018-10-04 11:22:50 +01:00
Justin 16928c85bb
Clean up codes, flags, types
This includes:

* Optimised values (e.g. `PENALIZED` now fits in a single byte)
* More consistent values (e.g. the flags start at 0)
* Added types for specials
2018-10-04 11:21:33 +01:00
Justin a85f59779a
Clean up data structures
This includes:

* Giving every data structure a name (e.g. `BeaconChainBlock`)
* Making data structure names consistent (e.g. `SpecialObject` => `SpecialRecord`)
* Arranging the fields within the data structures in a more logical/consistent manner
* Reworking the comments to be more concise and to the point
* Rename some fields for consistency:
    * `shard_id` => `shard` (for consistency with `withdrawal_shard`)
    * `last_state_recalculation` => `last_state_recalculation_slot` (for consistency with `last_finalized_slot`, `last_justified_slot`, etc.)
    * `current_dynasty` => `dynasty` (for consistency with `slot`, `shard`)
    * `pow_chain_ref` => `pow_chain_reference` (abbreviations are avoided throughout)
* Various other cleanups
2018-10-04 11:09:39 +01:00
Danny Ryan ed014c4fbc Merge branch 'master' into todos 2018-10-03 21:47:50 -05:00
Danny Ryan d779bef562
Merge pull request #38 from ethereum/JustinDrake-patch-1
Minor cleanups
2018-10-03 21:46:11 -05:00
Danny Ryan f1dda7f434 [test-format] Add base document for general test format 2018-10-03 21:41:28 -05:00
vbuterin 6568bc1b6d
Update casper_sharding_v2.1.md 2018-10-03 22:02:04 -04:00
Justin 9a05c79e3e
Update casper_sharding_v2.1.md 2018-10-03 22:15:43 +01:00
Justin 2f34691615
Minor cleanups 2018-10-03 22:00:05 +01:00
Justin 538e4e1f88
Rename simpleserialize.md to simple-serialize.md
For consistency with beacon-chain.md
2018-10-03 21:35:47 +01:00
vbuterin 8b0bbad29f
Update casper_sharding_v2.1.md 2018-10-03 15:09:16 -04:00
Vitalik Buterin e640f13e9c
Added versioning 2018-10-03 12:11:53 -04:00
Danny Ryan 8dffb4e32b
remove extra comma from spec 2018-10-03 09:37:21 -05:00
Danny Ryan 4686f4938f Merge branch 'master' into vitalik2 2018-10-03 09:36:46 -05:00
Danny Ryan 0941d592de
Merge pull request #30 from ethereum/JustinDrake-patch-1
Cleanups in get_active_validator_indices and shuffle
2018-10-03 09:31:56 -05:00
Vitalik Buterin e7ff5ad5e7
Added RANDAO support (without multi-skip mechanism) 2018-10-03 10:29:00 -04:00
Danny Ryan 86d0c209b7 fix rand_max in shuffle alg. add note about usage 2018-10-03 09:28:42 -05:00
Danny Ryan 65656e15d1
Merge pull request #31 from ethereum/JustinDrake-patch-2
Minor fixes
2018-10-03 09:19:20 -05:00
Danny Ryan 7e978f1b40 Merge branch 'master' into JustinDrake-patch-1 2018-10-03 09:17:06 -05:00
Justin 48c2643f47
Update beacon-chain.md 2018-10-03 15:16:38 +01:00
Justin 4076804d2b
Rework Appendix A on hash functions 2018-10-03 15:13:29 +01:00
Justin 038db57b9d
Minor fixes 2018-10-03 15:02:58 +01:00
Danny Ryan 52d2355a5e Merge branch 'master' into rename-file 2018-10-03 08:47:54 -05:00
Danny Ryan f547232070
Merge pull request #27 from ethereum/header-and-intro
Clean up header and intro
2018-10-03 08:46:41 -05:00
Justin f271d8b358
Cleanups in get_active_validator_indices and shuffle 2018-10-03 14:45:33 +01:00
Danny Ryan d8c681b695
add 'receipts' when discussion registration txs 2018-10-03 08:45:28 -05:00
Justin cf7552ee31
Rename spec.md to beacon-chain.md 2018-10-03 14:35:11 +01:00
Danny Ryan 66e316dcb3
Merge pull request #18 from sigp/master
[WIP] Initial SimpleSerialize (SSZ) spec
2018-10-03 08:34:54 -05:00
Justin 24c8a53b5c
Update casper_sharding_v2.1.md 2018-10-03 14:29:56 +01:00
Danny Ryan cbec267dc4 Merge branch 'master' into constants-readability 2018-10-03 08:28:36 -05:00
Danny Ryan 2637057b06
Merge pull request #24 from ethereum/vitalik
Added hash chain for light clients
2018-10-03 08:02:58 -05:00
Justin ca7bb7426e
Update casper_sharding_v2.1.md 2018-10-03 12:32:16 +01:00
Justin 1c3b38a749
Update casper_sharding_v2.1.md 2018-10-03 12:10:52 +01:00
Justin 21da063d3c
Update casper_sharding_v2.1.md 2018-10-03 12:04:17 +01:00
Justin afea8a10a5
Rework the TODO
Probably missed a few. Will try to keep up to date.
2018-10-03 11:59:59 +01:00
Justin e5f94eae07
Fix typo 2018-10-03 11:24:07 +01:00
Hsiao-Wei Wang ef5d54cda0
Merge pull request #28 from ethereum/registration-contract
Rework registration contract
2018-10-03 17:58:17 +08:00
Justin 8210eb0233
Start work on glossary
A lot more work required. The goal is to get it to the standard of the [retired phase 1 spec](https://ethresear.ch/t/sharding-phase-1-spec-retired/1407).
2018-10-03 10:38:09 +01:00
Justin d85cb48fef
Rework registration contract 2018-10-03 10:28:15 +01:00
Justin be385b4c57
Clean up header and intro 2018-10-03 10:24:31 +01:00
Justin 52ca90a7ee
Remove version number in file name
Putting the version number in the file name is not future proof
2018-10-03 08:30:42 +01:00
Justin 8648f4800e
Rework the constants for readability 2018-10-03 08:27:39 +01:00
NatoliChris 03252637cb
Add container todo stubs 2018-10-03 15:08:20 +10:00
Vitalik Buterin 86ea004ea6 Added hash chain for light clients 2018-10-02 19:05:30 -04:00
NatoliChris a2ad4bf6d5
Add assertions in examples; Update checks from @djrtwo's comments 2018-10-03 08:21:28 +10:00
Vitalik Buterin 894fb380f3 Added backward skip list 2018-10-02 14:13:13 -04:00
Vitalik Buterin 95b67a4fd0 Fixes Justin's issues except nitpicks 3,13,16,20, content 2,3,6 2018-10-02 11:20:07 -04:00
NatoliChris cd71c223d1
Add "WIP" to title to make it clear; @djrtwo's comment in #18 2018-10-02 23:46:22 +10:00
NatoliChris 8521bd93ad
Update List/Vectors with comments on #18 2018-10-02 23:42:25 +10:00
NatoliChris 78a830da27
Update Hash Types as per @mratsim's comments on #18 2018-10-02 23:33:11 +10:00
NatoliChris 6287573adc
Update misspelling; Use `LENGTH_BYTES` variable; Update for comments 2018-10-02 12:34:20 +10:00
Danny Ryan 0043846ff9 [clean-up] Move all data structures to beginning of spec. Clean up a few things 2018-10-01 21:21:15 -05:00
Danny Ryan b3d258e54e [validator-rotation] fix corner case in change_validators, add what to do with special ojects in active state 2018-10-01 21:02:46 -05:00
NatoliChris 0b0f618c61
Add check for byte serialization 2018-10-02 10:47:30 +10:00
NatoliChris b1c873c8f6
Remove int as per discussions, update implementations 2018-10-02 09:51:01 +10:00
NatoliChris 4c75cd0db2 Initial SimpleSerialize spec 2018-10-02 09:43:47 +10:00
Danny Ryan 11d6daf68c [validator-rotation] add WITHDRAWAL_PERIOD constant 2018-10-01 17:30:07 -05:00
Danny Ryan 52cf7f943d [validator-rotation] add validator rotation logic 2018-10-01 17:19:16 -05:00
Danny Ryan ca48b304f9 [fix-crosslink-reward] add 'B *' factor to quadratic leak term in crosslink rewards 2018-10-01 09:28:22 -05:00
Danny Ryan 0d4cd0e758 [crosslink-reward-fix] update crosslink reward logic to perform as expected 2018-09-30 20:40:48 -05:00
Danny Ryan 606cb477f6 [integer-sqrt] update int_sqrt to more robust implementation 2018-09-30 18:38:47 -05:00
Danny Ryan 2ef9bc9f06 Merge branch 'integer-sqrt' of github.com:ethereum/eth2.0-specs into integer-sqrt 2018-09-30 18:10:10 -05:00
Danny Ryan d25f536ec5 [integer-sqrt] add concrete implementation that meets the requirements 2018-09-30 18:02:09 -05:00
vbuterin 2f9b8b2f08
Update casper_sharding_v2.1.md 2018-09-30 14:38:51 -04:00
Danny Ryan 4cb9790ea8 [integer-sqrt] use abstract def of integer_sqrt 2018-09-30 11:50:44 -05:00
Danny Ryan ec1eee4133 [integer-sqrt] add comment to credit 'newton's method' 2018-09-30 10:04:02 -05:00
Danny Ryan 82ec8dfdc2 [integer-sqrt] add integer_sqrt helper function and use in rewards calculations 2018-09-30 09:56:43 -05:00
Danny Ryan 5cfa735482
Merge pull request #11 from hwwhww/blake2b
Added hash function description
2018-09-27 07:37:59 -05:00
Hsiao-Wei Wang e5af9ba254
PR feedback 2018-09-27 19:58:38 +08:00
Danny Ryan 815e597a49 [bound-committee-per-slot] enforce maximum committees per slot 2018-09-26 12:43:31 -05:00
Hsiao-Wei Wang 56e597187e
Added Appendix A - Hash function 2018-09-26 23:31:09 +08:00
nisdas a66db3cec8
Adding fix 2018-09-26 12:38:41 +08:00
Danny Ryan 8fac47eb94 [fix-quadratic-penalty] fix quadratic_penalty_quotient 2018-09-25 14:56:03 -05:00
Danny Ryan 338a892cb4 [reward-fixes] remove extra term in crosslink rewards 2018-09-25 10:44:28 -05:00
Danny Ryan 8b9eb6fa0e [reward-fixes] ffg rewards fix time since finality calculation. crosslink rewards fix cycle in question 2018-09-25 08:27:54 -05:00
Danny Ryan e712cd1f04
Merge pull request #4 from hwwhww/proofread
`EPOCH_LENGTH` -> `CYCLE_LENGTH`
2018-09-23 18:10:26 -05:00
Hsiao-Wei Wang 483e489e5d
`EPOCH_LENGTH` -> `CYCLE_LENGTH` 2018-09-22 15:09:34 +08:00
Hsiao-Wei Wang ff92171993
Added CC0 2018-09-22 15:06:53 +08:00
Hsiao-Wei Wang a1c853298e
20180921 1951 2018-09-22 12:36:02 +08:00
Hsiao-Wei Wang 0001b7b9de
first commit 2018-09-20 13:20:49 +08:00