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
defe2668a0
Merge pull request #266 from ethereum/JustinDrake-patch-10
...
First pass cleanup of bls_verify.md
2018-12-11 10:38:21 -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
Justin
d1c20b862b
Update bls_verify.md
2018-12-11 14:02:34 +00:00
Justin
a32af50513
Update bls_verify.md
2018-12-11 13:56:40 +00:00
Justin
23f7e9db62
Rename FQ2 to Fq2 and specify the G1 generator
2018-12-11 13:36:34 +00: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
37450e9a4d
Merge pull request #279 from status-im/attestation-unsigned
...
attestations: avoid unsigned underflow (eth2.0-specs/issues/#224)
2018-12-10 16:34:54 -06:00
Danny Ryan
70765a205e
fix toc
2018-12-10 16:30:25 -06:00
Danny Ryan
49f3cfebdf
add link to appendix A
2018-12-10 16:22:42 -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
Alex Stokes
ed3611904d
update reference to hash function
2018-12-10 13:32:16 -08: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
411d347b6b
Update bls_verify.md
2018-12-10 14:30:36 +00:00
Justin
03c014d0e3
Update 0_beacon-chain.md
2018-12-10 11:22:42 +00:00
Justin
c782725aa1
Update bls_verify.md
2018-12-10 10:43:42 +00:00
Justin
25cc1cf382
Address issues from reviewers
2018-12-10 10:34:36 +00:00
Justin
0afafe1c76
Merge branch 'master' into JustinDrake-patch-8
2018-12-10 10:11:41 +00:00
Nishant Das
88ef7b8186
typo ( #270 )
2018-12-10 08:28:11 +00:00
vbuterin
d6cc826bb0
Some edits
2018-12-09 23:44:44 -05:00
Justin
cd07ec126b
Update bls_verify.md
2018-12-09 14:51:15 +00:00
Justin
6079f70ebd
Update bls_verify.md
2018-12-09 14:49:16 +00:00
Justin
6c196fc411
Update bls_verify.md
2018-12-09 14:48:54 +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
Justin
0b8fa12289
Update bls_verify.md
2018-12-09 14:43:13 +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
Justin
24d3c9c33a
Update bls_verify.md
2018-12-09 14:30:48 +00: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
Justin
1b0b2f21cc
First pass cleanup of bls_verify.md
...
Misc cleanups:
* (typo) `highflag` => `highflag1`
* (typo) `lowflag = x = 0` => `lowflag == x == 0`
* Add structure and table of contents
* Describe more notation in words (e.g. `i`)
* Make sure flags are 1-bit
* Clarify and polish presentation
Example notation cleanups:
* `G1` => `id_G1` (to avoid confusing with the group G1)
* `field_modulus` => `q` (avoid using two names for same thing)
* `BLSVerify` => `bls_verify` (respect notation for functions in main document)
* `sig` => `signature` (avoid abbreviations as in main document)
TODO:
* Potentially describe `FQ2`, `b2`, `is_on_curve`, `multiply` in words
* Make the naming changes around `bls_verify` in the main document
* Fix any bugs introduced by the cleanup
2018-12-09 14:21:34 +00: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
vbuterin
238c0e10fe
Added explicit "must be < q" phrasing to BLS description ( #262 )
2018-12-09 12:33:37 +00:00
Hsiao-Wei Wang
e04378c38c
bytes32(pubkey) -> bytes48(pubkey) ( #265 )
2018-12-09 12:33:13 +00:00
Chris Leishman
eefaaf5ac3
Clarify TreeHash treatment of integers > 256bit
...
Also clarify treatment of hashes < 32bytes
2018-12-07 16:39:52 -08: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
Hsiao-Wei Wang
2983e68f03
Merge pull request #213 from paulhauner/patch-1
...
ForkData typo
2018-12-03 14:29:41 +08:00
Antoine Toulme
ff2551e754
Add Java implementation of SSZ
2018-12-02 21:22:51 -08: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