Justin
c8efdc7431
Add placeholder array in state for VDFs
...
Added `latest_vdf_outputs` in `state` initialised to an array of `ZERO_HASH` of length `LATEST_RANDAO_MIXES_LENGTH // EPOCH_LENGTH`. (There's one VDF output per epoch. The VDF input is the RANDAO mix at the epoch boundary.)
Further changes to activate VDFs (in a future phase):
* Add a new beacon "VDF output and proof" transaction, e.g. with `MAX_VDF_OUTPUT_AND_PROOF := 1`.
* Adjust the `MAX_SEED_LOOKAHEAD` constant, e.g. to `2**4 * EPOCH_LENGTH`. (The `2**4` parameter is essentially `A_max`.)
* Add a `process_vdf_output_and_proof` helper function in the per-block processing:
* Verify the VDF input hasn't already been processed (check the corresponding `state.latest_vdf_outputs` entry is not `ZERO_HASH`.)
* Verify the proof is correct, i.e. matches the VDF input and output
* Save the VDF output to `state.latest_vdf_outputs`
* In the per-epoch processing set the corresponding entry in `state.latest_vdf_outputs` to `ZERO_HASH`.
* Use a VDF output for the shuffling seed.
2018-12-21 15:26:13 +00:00
Danny Ryan
eaab06f2dd
Merge pull request #298 from ethereum/update_vyper_contract
...
deposit contract: reduce on-chain computation
2018-12-20 09:24:32 -06:00
terence tsao
96633781fb
simplify total_attesting_balance
2018-12-20 06:37:03 -08:00
Danny Ryan
e780be349e
Merge pull request #345 from ChihChengLiang/patch-2
...
Fix typo in get_new_shuffling
2018-12-20 07:52:30 -06:00
Danny Ryan
c90ab16701
Merge pull request #340 from ethereum/vbuterin-patch-15
...
Remove MIN_VALIDATOR_REGISTRY_CHANGE_INTERVAL
2018-12-20 07:51:58 -06:00
Chih Cheng Liang
d3cdd3fcc0
Fix typo in get_new_shuffling
2018-12-20 19:36:35 +08:00
terence tsao
c177ce23b3
typo on attesting_validator?
2018-12-19 21:56:43 -08:00
Akhila Raju
bf753a6120
Remove line repeat in initiate_validator_exit
2018-12-19 19:56:26 -06:00
Akhila Raju
09e31acda5
Remove line repeat in activate_validator
2018-12-19 19:53:28 -06:00
Danny Ryan
0809ca0d62
fix 'CYCLE_LENGTH' -> 'EPOCH_LENGTH'
2018-12-19 19:35:55 -06:00
vbuterin
56bc4412bc
Remove MIN_VALIDATOR_REGISTRY_CHANGE_INTERVAL
...
Slight simplification. Only substantive change is that if the validator registry stays constant, we don't reshuffle 3 epochs after the last reshuffling (ie. before the reshufflings happened after 1, 2, 3, 4, 8, 16... epochs, now it's just 1, 2, 4, 8, 16...)
2018-12-19 14:09:50 -05:00
Hsiao-Wei Wang
9b9114fac2
Merge branch 'master' into update_vyper_contract
2018-12-19 23:39:59 +08:00
Danny Ryan
105e669391
Merge pull request #327 from ethereum/vbuterin-patch-18
...
Keep randao mixes in the state
2018-12-19 09:03:25 -06:00
Anirudha Bose
257c83cc23
Fix typos in the beacon chain spec
2018-12-19 12:47:37 +01:00
Danny Ryan
36e26c86a3
fix assert conditions in get_block_hash
2018-12-18 12:53:48 -06:00
Danny Ryan
0de7240452
Merge branch 'master' into vbuterin-patch-18
2018-12-18 12:50:06 -06:00
Danny Ryan
20006c674b
Merge branch 'master' into hwwhww-patch-2
2018-12-18 12:45:50 -06:00
Danny Ryan
8548f03d5a
Merge pull request #317 from ethereum/vbuterin-patch-15
...
Put validator balances into a separate list in the state
2018-12-18 12:41:10 -06:00
Danny Ryan
f7afd679da
fix comment
2018-12-18 12:37:25 -06:00
Danny Ryan
5943fd507f
fix remaining index error
2018-12-18 12:27:33 -06:00
Hsiao-Wei Wang
bb1559a86f
PR feedback
2018-12-19 01:19:47 +08:00
Danny Ryan
0bf1acc1eb
Merge pull request #333 from burnburn/casper_ref
...
Make Casper ref normative
2018-12-18 10:05:52 -06:00
Danny Ryan
8bf1a542fe
Merge pull request #288 from ethereum/prev-balance-note
...
per-epoch Balance difference consensus safety note
2018-12-18 08:52:00 -06:00
Dan Burnett
5a0d8c8f42
move to Informative
2018-12-18 09:41:59 -05:00
Hsiao-Wei Wang
49f3746dc7
fix
2018-12-18 18:58:59 +08:00
vbuterin
2611180119
Fixes as per Danny's comments
2018-12-18 05:33:03 -05:00
Hsiao-Wei Wang
edf335ebf0
Fix on startup functions
2018-12-18 11:58:28 +08:00
Dan Burnett
cc4e066029
formatting change
2018-12-17 15:19:58 -05:00
Dan Burnett
d505aa28fe
make Casper FFG normative
2018-12-17 15:15:37 -05:00
vbuterin
cc5cef52cb
Separated block roots and randao mixes length, and fixed per-slot randao updates
2018-12-17 14:04:04 -05:00
Danny Ryan
49ce718cc2
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2018-12-17 13:53:42 -05:00
Danny Ryan
e16c98b854
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2018-12-17 13:53:35 -05:00
Danny Ryan
eee26d7b69
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2018-12-17 13:53:17 -05:00
Danny Ryan
9c620d3853
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2018-12-17 13:53:04 -05:00
vbuterin
7f66f06871
Fixed one more outdated-style balance query
2018-12-17 10:43:05 -05:00
vbuterin
2fa7d254dd
Merge branch 'master' into vbuterin-patch-15
2018-12-17 10:41:23 -05:00
Danny Ryan
2c48bab3d8
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2018-12-17 10:40:41 -05:00
Danny Ryan
110fe75a70
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2018-12-17 10:40:31 -05:00
Danny Ryan
fbabeff838
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2018-12-17 10:40:21 -05:00
vbuterin
b402a7c1d6
Made a function multiline
2018-12-17 09:12:51 -05:00
Danny Ryan
eccfc912b5
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2018-12-17 09:11:39 -05:00
vbuterin
c0d65cc334
Changed get_effective_balance definition to use state+index
2018-12-17 09:10:44 -05:00
Danny Ryan
e9f986971e
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2018-12-17 09:08:13 -05:00
vbuterin
365437d4c2
Forgot to update randao mixes in one place
2018-12-17 04:46:28 -05:00
vbuterin
d1aa3b4cd6
Editing randao_mixes in place instead of as a queue
...
Saves having to re-Merkelize an entire 8192-item list every block.
2018-12-17 04:44:49 -05:00
vbuterin
416bbf9cea
Edit latest_block_roots in place instead of as a queue
...
Faster editing that way; otherwise every block will require completely reconstructing a 8192-sized Merkle tree.
2018-12-17 04:40:27 -05:00
vbuterin
4aa6e4de7b
Merge pull request #328 from ethereum/vbuterin-patch-19
...
Remove clamp
2018-12-17 04:17:02 -05:00
vbuterin
3725dd5cb1
Merge pull request #316 from ethereum/vbuterin-patch-13
...
Edit BLS spec as per issue #300
2018-12-16 04:06:57 -05:00
vbuterin
9e6c1a6244
Remove clamp
...
Removed the use of `clamp` from the spec, as there's no point in a helper function that's used exactly once; it only increases the amount people have to jump around the spec to understand what's going on.
2018-12-15 06:44:18 -05:00
vbuterin
425f7d51c9
Keep randao mixes in the state
...
Response to #295
Also a simplification, as two special cases get replaced: `state.randao_mix` -> `state.latest_randao_mixes[-1]`, and `state.next_seed` -> `state.latest_randao_mixes[-CYCLE_LENGTH-1]`.
2018-12-15 05:10:31 -05:00