Commit Graph

103 Commits

Author SHA1 Message Date
Danny Ryan 0a3cc8a84a
malefactor_key -> malefactor_secret 2020-01-03 07:29:23 -07:00
Danny Ryan e31f17f037
modify phase 1 to use new signature (no signing_root) pattern 2019-12-05 13:49:52 -07:00
Danny Ryan a32b0100ff
rebase fixes 2019-12-05 13:31:42 -07:00
protolambda 72a9dfc430
fix lint problems 2019-12-05 13:31:41 -07:00
protolambda 1623d40b6d
fix: check malefactor custody key 2019-12-05 13:31:41 -07:00
protolambda 41be2ed3ce
bugfix custody bit index lookup + lint fixes 2019-12-05 13:31:40 -07:00
protolambda 1a1c3773f9
implement custody game revamp for new shard proposal: simplifications and immediate processing, since custody data is bounded 2019-12-05 13:31:40 -07:00
protolambda e73316c13f
change configs to be loaded in time; reload specs module to make new config presets effective. Also fix more lint and consistency problems. 2019-12-05 13:30:49 -07:00
Danny Ryan d6bfe5d35c
lint phase 1 (2) 2019-12-05 13:29:52 -07:00
Danny Ryan 9f80a7f703
phase1 lint (1) 2019-12-05 13:29:51 -07:00
protolambda 03e956f9c9
validator init adjustments 2019-12-05 13:29:51 -07:00
protolambda 74d6021507
PR comment fixes 2019-12-05 13:29:50 -07:00
protolambda edef2fd8ae
more refactoring: more immediate custody game, general phase1 beacon chain changes 2019-12-05 13:29:50 -07:00
protolambda a33e01dab2
Start making phase1 work in pyspec again 2019-12-05 13:29:49 -07:00
Danny Ryan b4b5cc9115
Merge branch 'v09x' into dev 2019-12-05 13:29:04 -07:00
protolambda 103a66b2af
remove signing_root: see issue #1487 2019-12-03 21:10:19 +01:00
Danny Ryan 23abc11093
handle v0.9.2-dev conflict 2019-11-21 15:18:17 -07:00
protolambda 2c32274870
rename BytesN to ByteVector, rename Bytes to ByteList 2019-11-15 16:56:52 +01:00
protolambda c061abdd75
Avoid Hash <> hash() type and func confusion, intro Root and change to non-roots to Bytes32 2019-11-12 21:29:58 +01:00
Hsiao-Wei Wang 13c3d9c6e9
Update ToCs 2019-10-23 12:10:43 +08:00
Danny Ryan 437a65d3e1
cleanup wrt Justin's comments 2019-10-17 17:47:51 +09:00
Danny Ryan c239ce0b5e
crosslink committee -> beacon committee 2019-10-17 10:45:07 +09:00
Danny Ryan c392db3b9b
fix max epochs var 2019-10-12 14:44:53 +09:00
Justin Drake e7db58cb7e
Rename ACTIVATION_EXIT_DELAY to MAX_SEED_LOOKAHEAD for phase 1 2019-09-23 12:48:41 -06:00
Danny Ryan 834b811222
fix custody_subchunkify return type 2019-09-16 13:26:27 -06:00
Gregory Markou 794a2407a1
Update specs/core/1_custody-game.md
Co-Authored-By: Danny Ryan <dannyjryan@gmail.com>
2019-09-16 11:19:51 -04:00
Gregory Markou 6d9dd04b50
Update 1_custody-game.md 2019-09-15 21:03:50 -04:00
Gregory Markou d66e6ca0b8
Update 1_custody-game.md
Fix table
2019-09-15 17:12:36 -04:00
Hsiao-Wei Wang d84c902bb1
Merge branch 'dev' into v082_backport 2019-08-12 01:47:24 +08:00
dankrad b345dc0f5f Legendre custody construction (#1305)
* Stab at Legendre custody construction + some tests

* Fix some problems and fix function puller to remove phase0 only lines in phase1

* Pass the linter

* Add headings

* Fix domain for BLS stub

* Change Jacobi to Legendre

* n -> q to clarify notation

* Headings

* Another missing heading

* Custody subchunks via padding

* Fix max_reveal_lateness stuff

* Better names for reveal period functions

* Better parametrization of max_reveal_lateness computation and tests for custody reveal processing

* Fix linter

* Allow challenging for one period after the custody reveal, shorter periods for minimal tests

* Fix lint

* Fix linter error
2019-08-11 13:05:17 -04:00
Hsiao-Wei Wang f336e7ffb3
Rename `is_empty` to `is_zero` 2019-07-25 17:32:27 +08:00
Hsiao-Wei Wang 733653f169
Update some missing type hinting of phase 1 2019-07-04 20:52:58 +08:00
Danny Ryan af5719031c
Merge branch 'dev' into fix-bls-domain-type 2019-06-30 20:28:18 -05:00
Carl Beekhuizen 41897e779a
validate_indexed_attestation -> is_valid_indexed_attestation` 2019-07-01 00:10:28 +02:00
Carl Beekhuizen 6e5f43c033
merge in `dev` and resolve conflicts 2019-06-30 23:37:56 +02:00
Carl Beekhuizen 918192cdab
`compute_slot_epoch`->`compute_epoch_of_slot` 2019-06-30 23:35:07 +02:00
Hsiao-Wei Wang 67b0b4ad33
Update other spec files 2019-07-01 04:57:42 +08:00
protolambda e53063c08d
type BLS domain and domain type 2019-06-30 22:12:49 +02:00
Carl Beekhuizen 361732f409
merge in dev and resolve conflicts 2019-06-30 21:54:30 +02:00
Carl Beekhuizen e0a0f6e156
Makes markdown comply with linter 2019-06-30 21:25:58 +02:00
Carl Beekhuizen 0fd1d38417
`Misc` function rename 2019-06-30 20:58:02 +02:00
Danny Ryan d1bc2f03ac
remove 'int' types from spec typehints. replace with uint64 2019-06-30 13:00:22 -05:00
Danny Ryan 6d5e4da3e0
PR feedback 2019-06-30 12:42:24 -05:00
Justin Drake 0be2b8e620 Cleanup 2019-06-30 16:10:22 +01:00
Justin Drake e8532ced79 WIP 2019-06-30 10:56:14 +01:00
Justin Drake 369c457d76 WIP2 2019-06-30 10:11:23 +01:00
Justin Drake d0acd81157 WIP 2019-06-30 10:02:18 +01:00
protolambda 5f0e58364f
resolved merge conflicts, take attesters seq->set change from dev, take bits rework from bitlistvector PR 2019-06-28 18:17:13 +02:00
Danny Ryan dcb0244a4f get_attesting_indices set instead of sorted (#1225) 2019-06-28 16:19:59 +01:00
vbuterin c764202a57 Slashing penalty calculation change (#1217)
If the exit queue is very long, then a validator may take many months to exit. With the code as currently written, however, self-slashing is a potentially lucrative route to get one's money out faster, because one can exit in 36 days.

This PR changes it so that slashing can only extend your withdrawal time, not contract it. Also, instead of the slashed balances used to calculate one's slashing penalty being those in `[withdrawal - 54 days ... withdrawal - 18 days]`, we now run the penalization algorithm once every 36 days that a validator is slashed but not withdrawn, so that it covers the 36-day period where the validator was actually slashed.  It also moves the minimum slashing penalty to the `slash_validator` function so that it is only applied once.

We also simplify the `slashed_balances` logic to be per-epoch.
2019-06-28 14:35:26 +01:00