Danny Ryan
cd9e7ecaeb
minor fix
2018-12-13 12:18:29 -06:00
Danny Ryan
697d3c5eb5
add doc string for new slashing helper funtions
2018-12-13 12:17:39 -06:00
Danny Ryan
7c833fafc5
clean up casper slashing with helper functions etc
2018-12-13 12:09:39 -06:00
Raul Jordan
923df80b03
replace shard_block_hash with shard_block_root
2018-12-13 11:26:10 -06:00
terence tsao
9170efee1b
removed old comments
2018-12-13 08:27:22 -08:00
Hsiao-Wei Wang
1ea887c964
Deposits: define `DepositData` and rename `DepositParameters` to `DepositInput` ( #310 )
2018-12-13 15:36:57 +00:00
terence tsao
ddb91adecf
quick fix on typo
2018-12-13 06:51:47 -08:00
Gregory Markou
b554204688
clarified language around start_up ( #303 )
2018-12-13 13:08:51 +00:00
Justin
6b6a04c884
Bugfix (missing `state.`)
2018-12-13 10:03:50 +00:00
Hsiao-Wei Wang
c1a3b29145
Fix `verify_slashable_vote_data`: use `get_domain` ( #306 )
2018-12-13 09:55:37 +00:00
Hsiao-Wei Wang
6fa12f6603
Merge pull request #301 from ethereum/vote_rename
...
Some renames about vote and fix `verify_slashable_vote_data` (`verify_casper_votes`)
2018-12-13 13:58:10 +08:00
Hsiao-Wei Wang
d5a5e1815c
Rename `LATEST_BLOCK_ROOT_COUNT` -> `LATEST_BLOCK_ROOTS_LENGTH`
2018-12-13 13:55:34 +08:00
Hsiao-Wei Wang
9eeb863ec6
Refactor `verify_slashable_vote_data`
2018-12-13 03:11:53 +08:00
Hsiao-Wei Wang
ab7549e52e
Move `verify_slashable_vote_data` to the last verification of Casper slashings
2018-12-13 03:04:10 +08:00
Hsiao-Wei Wang
d2fda68ccb
Fix ToC
2018-12-13 03:00:53 +08:00
Hsiao-Wei Wang
4aa6ec4468
Update `CasperSlashing` and `verify_casper_votes`
...
1. Rename `verify_casper_votes` -> `verify_slashable_vote_data`
2. Rename `CasperSlashing.votes_1` -> `CasperSlashing.slashable_vote_data_1`
3. Rename `CasperSlashing.votes_2` -> `CasperSlashing.slashable_vote_data_2`
4. Fix `verify_slashable_vote_data` `(verify_casper_votes)`
2018-12-13 02:55:28 +08:00
Hsiao-Wei Wang
ae5221c4f8
Move BLS verification to later step
2018-12-13 02:11:47 +08:00
Hsiao-Wei Wang
ac3ffb3df6
`LATEST_BLOCK_ROOTS_COUNT` -> `LATEST_BLOCK_ROOT_COUNT`
2018-12-13 02:08:37 +08:00
Hsiao-Wei Wang
81c6b561fc
`CandidatePoWReceiptRootRecord.votes` -> `CandidatePoWReceiptRootRecord.vote_count`
2018-12-13 02:07:12 +08:00
Danny Ryan
cc34097fba
fix genesis
2018-12-12 11:51:42 -06:00
Hsiao-Wei Wang
130e45ee39
Reduce on-chain computation
2018-12-13 01:39:34 +08:00
Hsiao-Wei Wang
92b9253ecb
Fix ToC
2018-12-13 01:35:11 +08:00
terence tsao
3b0fe25c14
multiply GWEI_PER_ETH
2018-12-12 09:29:26 -08:00
Hsiao-Wei Wang
4c3c8510d4
Fix 'validator_index': 'uint64' -> 'uint24'
2018-12-13 01:09:56 +08:00
Danny Ryan
acd83973fb
bold note
2018-12-12 10:02:49 -06:00
Danny Ryan
70a577a786
Merge branch 'master' into prev-balance-note
2018-12-12 10:01:14 -06:00
Danny Ryan
10fa84b057
rename base_inactivity_penalty to inactivity_penalty
2018-12-12 09:28:47 -06:00
Danny Ryan
541f33094f
move rewards helpers to rewrds and penalties section
2018-12-12 09:14:44 -06:00
Danny Ryan
bc60576d3c
rework rewards sections as per PR feedback
2018-12-12 09:07:44 -06:00
Justin
19b0421d4d
Merge branch 'master' into fix-rewards
2018-12-12 13:11:10 +00:00
vbuterin
6b5479cac9
Moved ancestor hashes to state, changed to batched accumulator ( #269 )
...
* Replaced ancestors hashes in blocks with the previous block root
* Add a block root batched accumulator
* Cleanup processing presentation
2018-12-12 13:02:50 +00:00
Chih Cheng Liang
21da07b4f7
typo ( #294 )
2018-12-12 10:30:58 +00:00
Danny Ryan
e2714b3344
add bls_verify_multiple def to phase 0 spec ( #292 )
2018-12-11 21:18:30 +00:00
Danny Ryan
726ed97eb2
Merge branch 'rename_tree_roots' of https://github.com/terenc3t/eth2.0-specs into terenc3t-rename_tree_roots
2018-12-11 14:54:30 -06:00
Terence Tsao
3f31eecb18
fixed typo & s/winning_hash/winning_root/
2018-12-11 12:50:20 -08:00
Terence Tsao
a13997d738
updated rest of the fields except ancestor_hashes
2018-12-11 12:38:32 -08:00
Justin
9f8ae361f9
Rename `BLSVerify` to `bls_verify` and put `hash` in helpers
2018-12-11 20:30:28 +00:00
Danny Ryan
032007ad17
add organization to previous epoch attester helpers
2018-12-11 13:40:00 -06:00
Danny Ryan
5e84a53ff1
base_reward is 1/4 of total reward val can earn per cycle
2018-12-11 13:32:27 -06:00
Danny Ryan
42364fe7b1
add granular reward for the four different parts of attestation
2018-12-11 13:22:17 -06:00
Terence Tsao
e0e2fed1b5
rename hash tree roots as root
2018-12-11 09:53:56 -08:00
Danny Ryan
83224c320a
small edit to language
2018-12-11 11:16:24 -06:00
Danny Ryan
befc349878
add balance diff consensus safety note
2018-12-11 11:14:42 -06:00
Danny Ryan
e8d8b03089
note the vyper version the contract is expected to be compiled with ( #287 )
2018-12-11 16:29:09 +00:00
Danny Ryan
084880511d
Merge pull request #280 from ethereum/validator-status
...
validator status cleanup
2018-12-11 10:14:02 -06:00
Danny Ryan
5734b25fb1
rename bls verification spec ref
2018-12-11 10:13:31 -06:00
Danny Ryan
c462f563b1
use Deposit object for processing intiial deposits
2018-12-11 10:02:59 -06:00
Danny Ryan
1e3f518f02
pr feedback
2018-12-11 09:49:50 -06:00
Danny Ryan
e64bfb289c
Merge pull request #282 from ethereum/ssztreehash-cleanup
...
cleanup refs to SSZTreeHash
2018-12-11 09:17:57 -06:00
vbuterin
47dc3eb48b
Updated winning_hash description ( #283 )
2018-12-11 13:25:21 +00:00
Danny Ryan
6fccd9f793
cleanup a few more hash refs to ssztreehash
2018-12-10 17:08:04 -06:00
Danny Ryan
fa685abc47
add ref to ssztreehash spec. cleanup where ssztreehash should be used
2018-12-10 16:58:36 -06:00
Danny Ryan
ae33eec081
Merge branch 'master' into validator-status
2018-12-10 16:43:35 -06:00
Danny Ryan
e77bf04711
remove direct calls to exit_validator
2018-12-10 16:42:28 -06:00
Danny Ryan
70765a205e
fix toc
2018-12-10 16:30:25 -06:00
Danny Ryan
0c281c8113
local var i -> index
2018-12-10 16:17:42 -06:00
Danny Ryan
03901ffe65
cleanups
2018-12-10 16:14:08 -06:00
Danny Ryan
9cff4ae653
fix exit conditions
2018-12-10 15:56:22 -06:00
Danny Ryan
6f058c2756
begin validator status cleanup
2018-12-10 15:16:06 -06:00
Jacek Sieka
2facc754cc
attestations: avoid unsigned underflow (eth2.0-specs/issues/#224)
...
* and some nitpicks
2018-12-10 14:38:32 -06:00
Jacek Sieka
44ac70e7fe
remove trailing whitespace ( #278 )
2018-12-10 19:55:11 +00:00
Justin
03c014d0e3
Update 0_beacon-chain.md
2018-12-10 11:22:42 +00:00
Justin
0afafe1c76
Merge branch 'master' into JustinDrake-patch-8
2018-12-10 10:11:41 +00:00
Danny Ryan
de32e25bfc
fix initial initial persistent_committees ( #258 )
...
* fix initial persistent_committees
* initial persistent commmitees from active validator indices
2018-12-09 14:47:30 +00:00
Danny Ryan
685a1be651
Merge pull request #252 from ethereum/remove-specials
...
new block format pt2 -- remove specials
2018-12-09 08:33:46 -06:00
Danny Ryan
cc476db8c9
address pr ffeedback
2018-12-09 08:33:12 -06:00
Hsiao-Wei Wang
c897dd99c2
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: djrtwo <dannyjryan@gmail.com>
2018-12-09 08:25:34 -06:00
vbuterin
70836ecd1c
Clarify why it's called INVERSE_SQRT_E_DROP_TIME ( #261 )
...
* (cleanup) Rename `SQRT_E_DROP_TIME` to `INVERSE_SQRT_E_DROP_TIME` to reflect `1/sqrt(e)`
* (cleanup) Justify why it's called INVERSE_SQRT_E_DROP_TIME
* (cleanup) Polish and simplify presentation
* (bug fix) Fixed 2**34 value
* (bug fix) Replace epochs with slots to make the calculations work
2018-12-09 13:08:11 +00:00
Hsiao-Wei Wang
e04378c38c
bytes32(pubkey) -> bytes48(pubkey) ( #265 )
2018-12-09 12:33:13 +00:00
Justin
2ed18bfa1f
Casper cleanups and bug fixes
...
* (cleanup) `SpecialAttestationData` => `CasperVotes`
* (cleanup) `vote_1`, `vote_2` => `votes_1`, `votes_2`
* (bug fix) Place a bound on the number of votes with `MAX_CASPER_VOTES`
* (bug fix) Supply `state` when calling `verify_casper_votes`
2018-12-07 20:09:49 +00:00
Danny Ryan
e2eedabed2
Merge pull request #254 from mkalinin/fix-boundary_attesting_balance-2
...
Fix epoch_boundary_attesting_balance calculation
2018-12-07 13:00:38 -06:00
Danny Ryan
a0e226c957
remove record from operation types
2018-12-07 12:51:15 -06:00
Danny Ryan
74ac7e6ee1
PR feedback
2018-12-07 12:43:11 -06:00
Chih Cheng Liang
357cb72d7a
fix broken md ( #257 )
2018-12-07 16:16:09 +00:00
Danny Ryan
dc4bbfedab
clarify header
2018-12-07 09:18:06 -06:00
Danny Ryan
c4acafdb58
change block objects to operations
2018-12-07 09:15:55 -06:00
Danny Ryan
3a24fed194
fix toc'
2018-12-07 09:05:29 -06:00
Danny Ryan
d9abce4471
rename transactiosn to block objects
2018-12-07 09:04:16 -06:00
Danny Ryan
76e5b76dc2
Merge branch 'master' into remove-specials
2018-12-07 08:12:58 -06:00
Danny Ryan
9f64530aac
remove BeaconBlockHeader
2018-12-07 07:46:52 -06:00
Mikhail Kalinin
1a716609ba
Fix epoch_boundary_attesting_balance calculation
...
get_effective_balance accepts ValidatorRecord object as an input but it was called with validator index instead
2018-12-07 18:23:55 +06:00
Justin
2d8efe57c0
Bug fixes and cleanups around exit_validator
...
Cleanups
* Use `state.slot` over `current_slot`.
* Specify `new_status`
* Segregate ejection processing
Bug fixes:
* Put ejections at the end of the per-slot processing (TODO: per-slot processing should come *after* per-epoch processing)
* Immediately exit ejections
* Include `ACTIVE_PENDING_EXIT` as an active state
* Renamed two `State` to `BeaconState`
2018-12-07 12:18:55 +00:00
Danny Ryan
35f8eccc1f
fix tox
2018-12-06 19:18:49 -06:00
Danny Ryan
57b86e3204
fix toc
2018-12-06 19:16:10 -06:00
Danny Ryan
bcb09a49a0
rework transactions data structure ordering
2018-12-06 19:13:19 -06:00
Danny Ryan
3ea04a28ca
fix table
2018-12-06 19:07:26 -06:00
Danny Ryan
80e224be8c
remove specials
2018-12-06 19:02:23 -06:00
Danny Ryan
40fd893fc1
remove extra field
2018-12-06 17:55:23 -06:00
Danny Ryan
d18ab07803
fix toc
2018-12-06 17:54:14 -06:00
Danny Ryan
7f542ca714
add beaconblockheader and body
2018-12-06 17:51:01 -06:00
Danny Ryan
15c11a46bd
consistency in multiplication of EPOCH_LENGTH formatting
2018-12-06 16:56:23 -06:00
Danny Ryan
332511b42b
simplify finality conditions
2018-12-06 16:51:29 -06:00
Danny Ryan
98430c7c68
address comments
2018-12-06 16:47:22 -06:00
Danny Ryan
ae1b64ccff
remove s helper
2018-12-06 16:38:40 -06:00
Danny Ryan
eb7715aa41
pr feedback
2018-12-06 16:12:33 -06:00
Danny Ryan
330b2449bf
pr feedback
2018-12-06 15:54:39 -06:00
Danny Ryan
5e058a15b8
remove 'slot_hash_block'
2018-12-06 10:41:50 -06:00
Danny Ryan
464ad63464
minor slot cleanups
2018-12-06 10:25:35 -06:00
Danny Ryan
3e1aad24b0
Merge branch 'master' into virtual-skip-block
2018-12-06 09:45:25 -06:00
Danny Ryan
c5eddd54f4
Merge branch 'master' into cleanup-validator-change
2018-12-06 09:42:24 -06:00
Danny Ryan
b8b2586c92
address review comments
2018-12-06 09:40:40 -06:00
Danny Ryan
f7e58dd82c
Merge branch 'master' into virtual-skip-block
2018-12-06 09:38:07 -06:00
Danny Ryan
8bc0254deb
add missing toc entry
2018-12-06 09:29:49 -06:00
Danny Ryan
7c25665d61
remove state.slot ref
2018-12-06 09:28:55 -06:00
Danny Ryan
c0ca669bd0
cleanup validator registry change to merge before #234
2018-12-06 08:51:57 -06:00
Danny Ryan
91f83e3861
isolate some of the per-epoch changes from the other #234
2018-12-06 08:38:31 -06:00
terence tsao
0626061977
don't need slot num in get_active_validator_indices
2018-12-05 17:26:07 -08:00
Danny Ryan
db65429cc8
rework to do virtual block transitions
2018-12-05 19:24:37 -06:00
Danny Ryan
22a77c331b
fix change_validators
2018-12-05 14:35:58 -06:00
Danny Ryan
1ccb1074c5
fix just/finality
2018-12-05 14:07:41 -06:00
Danny Ryan
e894a2dc18
fix issues in justificaiton/finality
2018-12-05 13:55:56 -06:00
Danny Ryan
4e0b120fe3
Merge branch 'master' into JustinDrake-patch-3
2018-12-05 13:14:16 -06:00
Danny Ryan
59494d1774
add state root processing
2018-12-05 13:03:24 -06:00
Danny Ryan
3a677eefa9
minor cleanup
2018-12-05 12:49:45 -06:00
Danny Ryan
cb871c3f0e
minor cleanups
2018-12-05 12:47:21 -06:00
Danny Ryan
c154c65f14
cleanup calls to 'get_block_hash'
2018-12-05 12:42:16 -06:00
Danny Ryan
3bd56891c5
cleanup per slot processing
2018-12-05 12:40:08 -06:00
Justin
eb26e10fae
Update 0_beacon-chain.md
2018-12-05 17:30:37 +00:00
Justin
f956135763
Fix #237 ( #238 )
2018-12-05 17:17:17 +00:00
terence tsao
130b837975
Fix ZERO_BALANCE_VALIDATOR_TTL and move get_domain
2018-12-05 14:41:11 +00:00
Justin
20407c8dd1
Update 0_beacon-chain.md
2018-12-05 14:34:50 +00:00
Justin
2fc3f88795
Update 0_beacon-chain.md
2018-12-05 11:22:15 +00:00
Paul Hauner
2913dfa6fe
Change `state.crosslinks` to `state.latest_crosslinks` ( #236 )
...
Change `state.crosslinks` to `state.latest_crosslinks` to match the `BeaconState` definition.
2018-12-05 09:03:09 +00:00
Justin
4c0841ec6a
Move to a per-slot state transition function
...
Initial pass for the migration from a per-block state transition function to a per-slot state transition function. More simplifications and cleanups can be made.
2018-12-04 21:28:31 +00:00
Justin
a4722faf12
Handle activations and exits separately for balance churn ( #230 )
...
This change is to avoid deposits from fully consuming the allowable balance churn, preventing exits from being processed. And vice versa with deposits/exits swapped.
A bunch of cleanups and bug fixes were made along the way.
2018-12-04 19:49:26 +00:00
Danny Ryan
b40a7c5ad6
Merge pull request #228 from ethereum/fix-validator-states
...
Fix deposit logic
2018-12-04 11:51:47 -06:00
Danny Ryan
17cf4e9f56
remove WITHDRAWN again
2018-12-04 11:23:37 -06:00
Danny Ryan
84a1a5fc07
fix pending -> exited_without_penalty. change pendning_exit to active_pending_exit. fix merkle tree in contract
2018-12-04 10:07:46 -06:00
Justin
5e4883ccbf
Stick with Keccak-256/SHA3 for now
...
See https://github.com/ethereum/eth2.0-specs/issues/218
2018-12-04 15:50:44 +00:00
Justin
73e77b75e1
Fix #223
...
`next_start_shard` does not need to be part of `state` (it's already available via `(state.shard_committees_at_slots[-1][-1].shard + 1) % SHARD_COUNT`)
2018-12-04 12:37:05 +00:00
Justin
67e4fa9d6f
Cleanup of deposit
...
* Structure the presentation, add sections to table of contents
* Remove incorrect and redundant information
* Add section on withdrawal credentials
2018-12-04 11:47:41 +00:00
Justin
4bf1539c83
Cleanups part 2 ( #217 )
...
Changelog (nothing major):
* Clean up constants
* Add to table of contents
* Rename a few
* Split into more categories (e.g. "Deposit contract" and "Initial values")
* Replaced `SQRT_E_DROP_TIME ` by `INACTIVITY_PENALTY_QUOTIENT`
* Put all the data structures in "Data structures", including specials
* Move deposit contract after "Data structures"
* `ShardAndCommittee` => `ShardCommittee` (and related changes)
* `aggregate_sig` => `aggregate_signature`
* `justified_slot_bitfield` => `justification_bitfield`
* Use double-ticks everywhere in Python docstrings
* Clean up deposit contract a bit
* Bug fix: ensure uniqueness of the `ChainStart` log
2018-12-04 10:57:09 +00:00
Danny Ryan
c2227a59de
fix int384 to uint384
2018-12-03 12:27:58 -06:00
vbuterin
0f59a564d0
Merge pull request #215 from mratsim/patch-1
...
Small typo in get_active_validator_indices
2018-12-03 09:38:03 -05:00
vbuterin
2f112e12fc
Merge pull request #202 from ethereum/initial_fork_slot
...
set initial fork_slot to INITIAL_SLOT_NUMBER
2018-12-03 09:37:27 -05:00
Mamy Ratsimbazafy
fe5a472ff6
Small typo in get_active_validator_indices
...
Change [ValidatorRecords] to [ValidatorRecord]
2018-12-03 15:14:31 +01:00
Paul Hauner
95211af400
ForkData typo
...
Extremely small change: added a close bracket to `ForkData`.
2018-12-03 14:08:33 +11:00
Hsiao-Wei Wang
11d4473863
Fix ToC
2018-12-01 13:29:19 +08:00
josojo
158c8f3ab3
minor correction
2018-11-30 22:47:28 +01:00
Danny Ryan
cf97bd18ea
Merge pull request #200 from burnburn/validator_definitions
...
add links to validator definition
2018-11-30 13:24:16 -06:00
Danny Ryan
daaf6e4bc2
Merge pull request #206 from burnburn/sample_reference
...
First/sample reference
2018-11-30 13:20:50 -06:00
Dan Burnett
38b3c572f6
Fix typo
2018-11-30 13:58:44 -05:00
Dan Burnett
72fc2a0cff
Show new reference style
2018-11-30 13:56:44 -05:00
Danny Ryan
1757c2ad26
Merge pull request #204 from burnburn/references
...
Add References section
2018-11-30 12:54:17 -06:00
Daniel Burnett
b04938d795
Merge branch 'master' into validator_definitions
2018-11-30 19:14:17 +01:00
Danny Ryan
b55ef47c9b
set initial fork_slot to INITIAL_SLOT_NUMBER
2018-11-30 12:04:18 -06:00
Dan Burnett
8f15b6179b
Add active validator links
2018-11-30 12:49:05 -05:00
Dan Burnett
13a5bdbf70
add links to validator definition
2018-11-30 12:31:09 -05:00
Justin
81360d50a4
Cleanups pt. 1 ( #185 )
...
Many cleanups in this monster commit! Two warnings:
1) More significant cleanups will be coming soon™.
2) While several bugs were fixed in this cleanup, some will undoubtedly have been introduced (thanks to the three reviewers!). In particular, the logic around validator statuses is known to be broken.
2018-11-30 14:28:33 +00:00
Dan Burnett
2701b44d23
Add References section
2018-11-29 11:12:12 -05:00
terence tsao
3b62508610
added link for BLS12-381 bls_verify spec
2018-11-29 06:18:31 -08:00
Danny Ryan
698283ee86
Merge pull request #188 from burnburn/notation
...
Add notation section
2018-11-29 07:29:03 -06:00
Dan Burnett
a851e09b9c
add Notation section
2018-11-29 07:44:43 -05:00
terence tsao
a891d5d585
Fix on_startup
2018-11-28 18:32:07 -08:00
Hsiao-Wei Wang
7359b36964
Remove tags
2018-11-28 23:07:39 +08:00
Hsiao-Wei Wang
64170f79a3
`ProcessedAttestations` -> `ProcessedAttestation`
2018-11-28 17:39:34 +08:00
Hsiao-Wei Wang
5abdbc600d
Fix `SQRT_E_DROP_TIME` description
2018-11-28 16:37:21 +08:00
Hsiao-Wei Wang
fead86e31c
Move vyper contract to `PoW chain registration contract` section
2018-11-28 16:00:53 +08:00
Hsiao-Wei Wang
ff92875aa1
fix constants table
2018-11-28 15:46:55 +08:00
Hsiao-Wei Wang
67123a79cb
proofread and add ToC
2018-11-28 15:40:27 +08:00
Danny Ryan
126a7abfa8
Merge branch 'master' into vbuterin-patch-7
2018-11-27 13:51:12 -06:00
Danny Ryan
0de7d3288a
change 'add_validator' to 'add_or_topup_validator'
2018-11-27 12:29:48 -06:00
vbuterin
e3eda6ff4e
Put back deletion period check
2018-11-27 13:25:25 -05:00
vbuterin
efdafee1ad
Made topping up a withdrawn account impossible
2018-11-27 13:23:26 -05:00
Danny Ryan
8b8253cdb2
fix incorrect types for eth in pow contract
2018-11-27 12:18:32 -06:00
vbuterin
4d3f388d28
Indent fix
2018-11-27 13:08:09 -05:00
vbuterin
9a20ecb9e4
Added handling for withdrawn validators
2018-11-27 12:07:30 -05:00
Hsiao-Wei Wang
b1fc396ab4
Refactor `change_validators`
2018-11-28 01:06:09 +08:00
Hsiao-Wei Wang
829e6d9034
Merge branch 'master' into hwwhww/patch-1
2018-11-28 00:29:15 +08:00
Danny Ryan
9f26fbb4e2
Merge pull request #149 from ethereum/vbuterin-patch-1
...
Replace cycles with epochs
2018-11-27 10:13:04 -06:00
Hsiao-Wei Wang
b27203c0ce
PR feedback: use `fork_data`
2018-11-27 23:54:09 +08:00
vbuterin
0d1b63bca3
Added min and max deposit sizes to Vyper contract
2018-11-27 10:07:21 -05:00
Hsiao-Wei Wang
562e60afdc
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2018-11-27 10:00:00 -05:00
Hsiao-Wei Wang
c70e555260
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2018-11-27 09:59:36 -05:00
Hsiao-Wei Wang
4dc7a8809c
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2018-11-27 09:59:25 -05:00
Hsiao-Wei Wang
eef28364ba
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2018-11-27 09:59:09 -05:00
Danny Ryan
cae363f209
add missing quotes for field
2018-11-27 08:21:42 -06:00
vbuterin
1df0f9f1b7
Fixed indent.
2018-11-27 07:25:31 -05:00
Hsiao-Wei Wang
2795af7bae
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2018-11-27 06:36:47 -05:00
Hsiao-Wei Wang
034e2d4546
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2018-11-27 06:36:10 -05:00
Hsiao-Wei Wang
2d766e4aae
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2018-11-27 06:35:55 -05:00
vbuterin
fc059f2ec1
Moved proposer reshuffling section
2018-11-27 06:30:19 -05:00
ncsolar
472a117162
Update 0_beacon-chain.md
...
Assumed it should read "A block `B` is justified if there is a descendant of `B`..." ?
2018-11-27 00:12:10 -06:00
Hsiao-Wei Wang
43ef444613
PR feedback: add `ForkData`
2018-11-27 11:52:06 +08:00
vbuterin
4ec40f06f3
Added topups
2018-11-26 19:08:04 -05:00
vbuterin
cd9c47af5a
Made pure functions return indices of validators instead of validator objects
...
Makes the code cleaner this way; returning an object that then gets mutated is confusing.
2018-11-26 18:51:34 -05:00
vbuterin
f2af5fd9df
Moved two calculations back to the FFG reward section
2018-11-26 18:44:29 -05:00
vbuterin
3b7164c2d6
Resolved some of @djrtwo's nitpicks
2018-11-26 18:39:35 -05:00
Danny Ryan
b8689e1727
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2018-11-26 18:35:32 -05:00
Danny Ryan
7fcd9930df
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2018-11-26 18:35:25 -05:00
Danny Ryan
e651e99210
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2018-11-26 18:35:02 -05:00
Danny Ryan
973d0ab591
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2018-11-26 18:33:31 -05:00
Danny Ryan
bcd9eb53fb
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2018-11-26 18:33:18 -05:00
Danny Ryan
fe4496dd74
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2018-11-26 18:33:06 -05:00
Danny Ryan
be56e58c1a
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2018-11-26 18:32:53 -05:00
vbuterin
9f1869cad9
Remove todos
2018-11-26 17:14:38 -05:00
vbuterin
170962c80f
Big refactor + simplification
2018-11-26 17:12:39 -05:00
vbuterin
386dab1140
Update 0_beacon-chain.md
2018-11-26 13:40:02 -05:00
Danny Ryan
d6d1f88ac1
Merge branch 'master' into vbuterin-patch-7
2018-11-26 10:48:28 -06:00
terence tsao
25e5408ed8
shard block sigs to uint384
2018-11-26 06:36:19 -10:00
Hsiao-Wei Wang
b66f168468
PR feedback: reduce `on_startup` parameters
2018-11-27 00:21:59 +08:00
Danny Ryan
347e796b39
Merge branch 'master' into vbuterin-patch-1
2018-11-26 10:01:27 -06:00
Hsiao-Wei Wang
4067e0f25a
fix
2018-11-26 21:43:59 +08:00
Hsiao-Wei Wang
7bde8c415a
fix `get_new_validator_set_delta_hash_chain`
2018-11-26 21:27:41 +08:00
Hsiao-Wei Wang
defa7da1c6
Refactor and fix on_startup
2018-11-26 21:12:14 +08:00
vbuterin
b2d13e3e23
Merge branch 'master' into vbuterin-patch-13
2018-11-26 06:24:11 -05:00
Justin
78a82f6185
Merge pull request #170 from ethereum/djrtwo-patch-2
...
change SpecialRecord.kind to uint64
2018-11-26 10:47:50 +00:00
Justin
1bf04c8c17
Make status uint64
2018-11-26 10:47:32 +00:00
Justin
d6fd0a4dc4
Merge pull request #172 from ethereum/JustinDrake-patch-2
...
Remove fork_version for DOMAIN_LOGOUT
2018-11-26 10:45:58 +00:00
Hsiao-Wei Wang
6a7b280d49
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: JustinDrake <drakefjustin@gmail.com>
2018-11-26 10:45:39 +00:00
Hsiao-Wei Wang
b1740ba0c5
Proofread
2018-11-26 17:14:42 +08:00
Hsiao-Wei Wang
e5eb3daad1
Merge branch 'master' into vbuterin-patch-1
2018-11-26 16:01:45 +08:00
vbuterin
2902170b26
Reduce width of vyper code
2018-11-25 22:22:15 -05:00
vbuterin
04ac4ea54d
Fixed more nitpicks
2018-11-25 21:15:46 -05:00
vbuterin
2dad2d4c42
V -> v
2018-11-25 21:14:13 -05:00
Justin
13866e3e04
Remove fork_version for DOMAIN_LOGOUT
...
Also remove `LOGOUT_MESSAGE `
2018-11-25 18:19:22 +00:00
Justin
9fde4e312d
Merge pull request #169 from ethereum/djrtwo-patch-1
...
remove fork_version from ProposalSignedData
2018-11-25 17:57:29 +00:00
vbuterin
e6a15edc8d
Made contract compile in Vyper
2018-11-25 12:08:06 -05:00
chainsafe
6c660de8ff
updated spelling
2018-11-25 12:03:27 -05:00
Danny Ryan
2a7103d1f6
change SpecialRecord.kind to uint64
2018-11-25 10:41:59 -06:00
Danny Ryan
e539de9922
remove fork_version from ProposalSignedData
2018-11-25 10:37:52 -06:00
Danny Ryan
ed8dd1eabc
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2018-11-25 11:33:17 -05:00
Danny Ryan
b6349eefd4
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2018-11-25 11:33:07 -05:00
Danny Ryan
c0aa43804b
block proposer sig to uint384
2018-11-25 10:12:48 -06:00
Danny Ryan
e711076723
Update 0_beacon-chain.md
2018-11-25 10:02:43 -06:00
Danny Ryan
16d05b353a
remove `GENESIS_TIME` from constants
...
This constant has been superseded by `BeaconState.genesis_time`
2018-11-25 09:54:29 -06:00
Hsiao-Wei Wang
20214da420
Merge pull request #142 from ethereum/vbuterin-patch-6
...
Switch from alt_bn255 to BLS12-381 and add domain separation
2018-11-25 23:11:34 +08:00
Hsiao-Wei Wang
440fb337e7
Merge branch 'master' into vbuterin-patch-6
2018-11-25 22:57:50 +08:00
vbuterin
6fe5928a84
Blocks to fixed size, add proposal signatures
2018-11-25 08:06:37 -05:00
vbuterin
99d7f5c1b8
Address Justin's #1
2018-11-25 06:33:05 -05:00
vbuterin
e8aa93e53e
Addressed Justin's 16, 17, 18
2018-11-25 06:23:34 -05:00
Hsiao-Wei Wang
4310b0c7d0
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2018-11-25 06:11:40 -05:00
Justin
50e8e1a918
Update 0_beacon-chain.md
2018-11-24 21:51:09 +00:00
Justin
51f8ea16ae
Merge pull request #164 from ethereum/vbuterin-patch-12
...
Made candidate PoW receipt roots into a map
2018-11-24 21:42:51 +00:00
Justin
755eadb20a
Fixes to PoW receipt roots
2018-11-24 21:41:53 +00:00
vbuterin
5ba47b476a
Shard uint16 -> uint64
2018-11-24 16:20:20 -05:00
vbuterin
40d289f1a3
Resolved Justin's #13
2018-11-24 16:16:27 -05:00
vbuterin
4be17dea14
Made candidate PoW receipt roots into a map
2018-11-24 16:12:27 -05:00
vbuterin
b92889cf83
Add a minimum deposit time equal to the SHARD_PERSISTENT_COMMITTEE_CHANGE_PERIOD
2018-11-24 16:07:25 -05:00
vbuterin
6bdff4e82e
Fix Justin's issues 10 and 12
2018-11-24 16:04:07 -05:00
Danny Ryan
d0f43663a3
Update 0_beacon-chain.md
2018-11-24 14:40:48 -06:00
Justin
d0f7937089
Remove TODO
...
See for example https://github.com/ethereum/eth2.0-specs/issues/128
2018-11-24 19:54:05 +00:00
vbuterin
fe3a0d6881
Only increment total_deposit_count for 32 ETH deposits from PoW chain
2018-11-24 14:03:22 -05:00
vbuterin
117b7b6953
More reward changes
...
* Added rewards for proposers
* Added declining rewards for greater inclusion distance
2018-11-24 13:30:18 -05:00
vbuterin
0d26da4a7d
Cleaned up committee balance changes
2018-11-24 12:44:43 -05:00
vbuterin
b61f7d57c9
Further incremental steps on balances
2018-11-24 12:34:26 -05:00
Hsiao-Wei Wang
4ba62bb80a
Remove leftover
2018-11-25 00:22:28 +08:00
Hsiao-Wei Wang
c8e9ff3d87
`shard_id` -> `shard` patch
2018-11-25 00:20:47 +08:00
Justin
a818575ca8
Minor cosmetic fixes
2018-11-24 15:15:19 +00:00
vbuterin
403253c879
Added 2/3/4 cycle finalization options
...
Suppose B1, B2, B3, B4 are consecutive blocks and we are now processing the end of the cycle containing B4.
* If B4 is justified using source B3, then B3 is finalized.
* If B4 is justified using source B2, and B3 has been justified, then B2 is finalized.
* If B3 is justified using source B1, and B1 has been justified, then B1 is finalized.
2018-11-24 09:41:25 -05:00
Justin
70cef14a08
Merge pull request #156 from ethereum/vbuterin-patch-3
...
LMD fork choice rule
2018-11-23 20:48:12 +00:00
vbuterin
020ec39260
Clarify variables
2018-11-23 15:25:45 -05:00
vbuterin
c098978efb
Fixed domain separation for proposals
2018-11-23 15:14:53 -05:00
vbuterin
5508a0f9c5
get_fork_version -> get_domain
2018-11-23 15:13:21 -05:00
Hsiao-Wei Wang
048090acf6
Update specs/core/0_beacon-chain.md
...
Co-Authored-By: vbuterin <v@buterin.com>
2018-11-23 15:10:59 -05:00
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
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
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
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
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