1472 Commits

Author SHA1 Message Date
Danny Ryan
2afbd8a02d
Merge branch 'dev' into JustinDrake-patch-8 2019-03-19 14:44:25 -06:00
Justin
b664453a34
Update 0_beacon-chain.md 2019-03-19 20:43:05 +00:00
Danny Ryan
ef0b3d2948
Merge branch 'dev' into JustinDrake-patch-20 2019-03-19 14:26:38 -06:00
Danny Ryan
be13fa8ec3
Merge branch 'dev' into JustinDrake-patch-14 2019-03-19 14:20:12 -06:00
Danny Ryan
574fd8d63c
Merge branch 'dev' into JustinDrake-patch-18 2019-03-19 14:14:35 -06:00
Danny Ryan
23ef802da5
fix small bug in sytax 2019-03-19 13:25:34 -06:00
Danny Ryan
cf06cb59c3
Merge branch 'dev' into JustinDrake-patch-13 2019-03-19 12:40:58 -06:00
Danny Ryan
054a1e3126
Merge branch 'dev' into JustinDrake-patch-12 2019-03-19 12:25:50 -06:00
Danny Ryan
bdfc01cf93
Merge branch 'dev' into JustinDrake-patch-11 2019-03-19 12:13:42 -06:00
Danny Ryan
f7fab30772
minor adjustment to not repeat committe count calc 2019-03-19 11:40:24 -06:00
Danny Ryan
f5826e7f1c
small lint 2019-03-19 11:34:49 -06:00
Danny Ryan
c8e9073414
define get_split_offset and squash a couple of bugs 2019-03-19 11:24:36 -06:00
Danny Ryan
009563b2c3
fix a few bugs in testing compute_committee 2019-03-19 11:15:51 -06:00
Justin
b50e148642
Update 0_beacon-chain.md 2019-03-19 17:13:25 +00:00
Danny Ryan
0737494694
Merge branch 'dev' into vbuterin-patch-16 2019-03-19 11:04:11 -06:00
vbuterin
c5ee74d5e0
Justin fixes 2019-03-19 11:21:17 -05:00
vbuterin
db92235d9e
Removed some no-longer-necessary functions 2019-03-19 09:34:37 -05:00
vbuterin
dd39d25c86
Replace committee exponential backoff with max progress
Removes the mechanism that only rotates committees if blocks have been finalized and every shard has been crosslinked or at exponentially decreasing intervals, and replaces it with a rule that shard committees can only progress a maximum of 64 epochs at a time to preserve the invariant that maximum possible work required per epoch for a validator is O(1).
2019-03-19 09:32:06 -05:00
Justin
78f47f2069
Avoid underflow in voluntary exits 2019-03-19 12:23:17 +00:00
Justin
e91036cfc9
Update 0_beacon-chain.md 2019-03-19 11:12:50 +00:00
Justin
0c383ce4a1
Update 0_beacon-chain.md 2019-03-19 11:11:18 +00:00
Justin
2b454d57f1
Update 0_beacon-chain.md 2019-03-19 11:08:17 +00:00
Justin
dc4b652f72
Only slash active validators
This is to prevent a spam/DoS attack where validators with zero balance get "slashed" but no validator loses any balance.
2019-03-19 11:03:42 +00:00
Justin
0039613628
Simplify exit_validator
Minor cleanup
2019-03-18 19:08:41 +00:00
Justin
d25c18b320
Update 0_beacon-chain.md 2019-03-17 11:48:47 +00:00
vbuterin
91a0c1ba5f Persistent committee size per slot reduced to max 128 (#734)
* Persistent committee size per slot target 128 max 256

Cuts down the cost of verifying a shard chain and aggregating signatures for a shard chain, and also makes the shard chain signatures more usable by light clients for verification as they would only need to keep track of a max 256-sized committee.
2019-03-17 11:44:19 +00:00
Hsiao-Wei Wang
6b82f5e999 Set GENESIS_FORK_VERSION to a bytes4 constant (#792)
* Set `GENESIS_FORK_VERSION` to a `bytes4` constant

* Update 0_beacon-chain.md
2019-03-17 11:33:42 +00:00
vbuterin
506fdf4042 Added FixedSizeList wrappers (#777)
* Added FixedSizeList wrappers

Requires corresponding changes to the spec pythonizer.

* FixedSizeList -> Vector
2019-03-17 11:33:19 +00:00
Sören Steiger
65162e0371 Update 0_beacon-chain.md (#791) 2019-03-16 20:56:10 +00:00
Sören Steiger
919b99e0ae Add missing word (#788) 2019-03-16 12:46:45 +00:00
NIC Lin
1a0938169b Fix get_split_offset (#790) 2019-03-16 12:45:39 +00:00
Justin
e5ff0d59ad
Update 0_beacon-chain.md 2019-03-16 11:23:41 +00:00
Sören Steiger
6b118d2398 Add trailing comma (#789) 2019-03-16 12:16:47 +08:00
Justin
709e0df39f
Update 0_beacon-chain.md 2019-03-15 13:54:33 +00:00
Justin
1236e8e1fa
Update 0_beacon-chain.md 2019-03-15 13:53:24 +00:00
Justin
4b461838d2
GENESIS_EPOCH - 1 for previous_shuffling_epoch and previous_justified_epoch
See item 26 in #675.
2019-03-15 13:32:24 +00:00
Justin
e912ed7fca
Include recently slashed churn in churn queue
Addresses #527 in combination with #784.
2019-03-15 13:12:03 +00:00
Justin
4a8d748c55
Milder ejections
See item 22 in https://github.com/ethereum/eth2.0-specs/issues/675. Also partially addresses https://github.com/ethereum/eth2.0-specs/issues/527.
2019-03-15 13:05:46 +00:00
Justin
d8d653dd94
Update 0_beacon-chain.md 2019-03-15 12:51:46 +00:00
Justin
96ab535704
Simplify and cleanup process_attestation
Improve readability and testability (by avoiding untriggerable `assert`). Fix #753.
2019-03-15 12:40:52 +00:00
Justin
58603f276e
Update 0_beacon-chain.md 2019-03-15 11:28:55 +00:00
Justin
dac43eb564
Simplify deposits
Fix #760
2019-03-15 11:18:06 +00:00
Justin
4a5ef98813
Move to SHA256
SHA256 is de facto blockchain standard. Standardisation of the hash function is a prerequisite for [full standardisation of BLS12-381 signatures](https://github.com/ethereum/eth2.0-specs/issues/605). Blockchain projects are likely to provide a cheap SHA256 opcods/precompile, and unlikely to provide a Keccak256 equivelent. (Even WASM-enabled blockchains are likely to provide a SHA256 opcode/precompile since WASM does *not* natively support optimised SHA256 CPU instructions.) With Ethereum 2.0 embracing SHA256 the wider industry is more likely to converge towards a unified cross-blockchain communication scheme via Merkle receipts.

There are no security blockers with SHA256 (see comments by Dan Boneh [here](https://github.com/ethereum/eth2.0-specs/issues/612#issuecomment-470452562)).
2019-03-15 10:51:08 +00:00
Justin
68d1c74784
Update 0_beacon-chain.md 2019-03-15 09:45:20 +00:00
Justin
5d327b6364
Update 0_beacon-chain.md 2019-03-15 09:43:38 +00:00
Hsiao-Wei Wang
16123685af
Merge branch 'dev' into vbuterin-patch-3 2019-03-15 11:22:15 +08:00
vbuterin
24468de23b
Change get_shuffling to compute_committee
See #729 and #774 

The behavior now is that the first committee will consist of `get_permuted_index(0..n-1)`, the second committee `get_permuted_index(n....2n-1)`, etc.
2019-03-14 20:28:44 -05:00
Justin
bbc5139115
Update 0_beacon-chain.md
Assuming `epoch % i` is a bug, and you meant `epoch + i`. @vbuterin
2019-03-14 19:01:32 +00:00
Justin
23d15f51a7
Update 0_beacon-chain.md 2019-03-14 18:57:17 +00:00
vbuterin
4442dfffb9
Fair proposer selection probability
Note that as a side effect, proposer selection becomes less predictable, but I don't feel like this is a large downside.
2019-03-13 21:42:49 -05:00