mirror of
https://github.com/status-im/eth2.0-specs.git
synced 2025-01-10 02:35:41 +00:00
241e52a202
* Introduce consensus code for Whisk * polish, simplify, clean up (~100 fewer lines) @asn-d6: As discussed, I fixed a few bugs along the way but likely also introduced some bugs :) * minor cleanups and fixes * simplify is_k_commitment_unique * Update beacon-chain.md * Update beacon-chain.md * Initialize `k` in `get_validator_from_deposit()` * minor cleanups * Update beacon-chain.md * Create beacon-chain.md This PR changes the Whisk tracker format to be of the form `(r * pubkey, r * BLS_GT_GENERATOR)` instead of `(r * k * BLS_G1_GENERATOR, r * BLS_G1_GENERATOR)`. This allows for non-interactive tracker registrations from validator pubkeys, removing ~50 lines the code. It also significantly reduces the amount of state overhead. This PR also removes permutation commitments, though those can be easily readded if deemed necessary. * A couple of fixes to the no-registration simplification @asn-d6: Readded a consistency check for `IsValidWhiskOpeningProof` (involving `pubkey` instead of `k_commitment`). * remove unused helpers * use Mary's suggested tracker * Update beacon-chain.md * Revert G_t element optimization This needs its own ethresearch post, and some additional analysis to see if we can do the shuffle ZKP in the allowed timeframe. This reverts commit 8517acabfc1dbb1a35789e6170b5db0bb2c19c9a. * Implement new shuffling strategy Ditch the Feistel logic and instead have each shuffler pick the row they shuffle using their RANDAO reveal. * Curdleproofs edits * working whisk eth2spec * working whisk dummy test * add more boilerplate set up code * rebase constants * Implement even newer and simplified shuffling strategy This commit further simplifies 0faef30fc131d1b471b63a7f16772eeeef548ef8 by removing the entire squareshuffle. The latest version of https://eprint.iacr.org/2022/560 proposes that each shuffler picks random indices from the entire candidate set instead of organizing validators into a square. * Move to _features * remove dummy test * Run doctoc * Change Whisk's previous fork to Capella instead of Bellatrix. Make linter happier. * Fix lint * Fix pylint * Fix mypy issues * Clean-up get_beacon_proposer_index * Fix doc headers * Fix capella link * Update apply_deposit * Rename process_shuffled_trackers --------- Co-authored-by: George Kadianakis <desnacked@riseup.net> Co-authored-by: Justin <drakefjustin@gmail.com> Co-authored-by: Nalin Bhardwaj <nalinbhardwaj@nibnalin.me> Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
47 lines
707 B
Plaintext
47 lines
707 B
Plaintext
*.pyc
|
|
/__pycache__
|
|
venv
|
|
.venvs
|
|
.venv
|
|
/.pytest_cache
|
|
|
|
build/
|
|
output/
|
|
dist/
|
|
|
|
consensus-spec-tests/
|
|
|
|
.pytest_cache
|
|
.mypy_cache
|
|
|
|
# Dynamically built from Markdown spec
|
|
tests/core/pyspec/eth2spec/phase0/
|
|
tests/core/pyspec/eth2spec/altair/
|
|
tests/core/pyspec/eth2spec/bellatrix/
|
|
tests/core/pyspec/eth2spec/capella/
|
|
tests/core/pyspec/eth2spec/deneb/
|
|
tests/core/pyspec/eth2spec/eip6110/
|
|
tests/core/pyspec/eth2spec/whisk/
|
|
|
|
# coverage reports
|
|
.htmlcov
|
|
.coverage
|
|
.coverage.*
|
|
|
|
# local CI testing output
|
|
tests/core/pyspec/test-reports
|
|
tests/core/pyspec/eth2spec/test_results.xml
|
|
|
|
*.egg-info
|
|
|
|
# TOC tool outputs temporary files
|
|
*.tmp
|
|
|
|
# docs reader build
|
|
docs/specs
|
|
docs/sync
|
|
docs/ssz
|
|
docs/fork_choice
|
|
docs/README.md
|
|
site
|