Skip to content

Instantly share code, notes, and snippets.

@mratsim
Created January 23, 2020 15:02
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mratsim/e493503c3b1e7f1b7de448671b72859f to your computer and use it in GitHub Desktop.
Save mratsim/e493503c3b1e7f1b7de448671b72859f to your computer and use it in GitHub Desktop.
2020-01-23 - Eth2 implementer's call 32
Agenda: https://github.com/ethereum/eth2.0-pm/issues/123
Nimbus
- Spec v0.10 implemented
- except crypto: BLS hash_to_curve in progress and should be done this week or early next week
- side-note: crypto spec is nicely blending high-level goals, design rationales and implementation
may be interesting for Eth2
- Passing v0.10 test vectors
- waiting for BLS and SSZ generic missing vectors
- Testnet: mixed libp2p, can connect from native libp2p or go-libp2p daemon
- started trying to connect with lighthouse (discovery work in progress)
- balance between Discv5 + aggregation
- experimenting with lighthouse testnet
- stability issues with longer running testnets when nodes are restarted or nodes join later
- data structure on databases “blackpool” and “attestation pool”
- > initialisation issues
- Nodes: 10 servers with 2 nodes per server
- Eth1: started on EVMC API for Nimbus (common API for Geth Aleth, …)
- will look into how to reuse Nimbus Eth1 code for Eth2 phase 2
- Most of the team will be in Brussel from 1st Feb to 7 Feb
- interop-like event: will clone other clients testnet/repo
Weekend projects
- nimbus builds on Android: can run in phone
- nbindgen: (Jacek weekend’s project) Nim binding generator for Rust libraries
Danny Q: biggest hurdles + estimation number of nodes
—————————————————
Testing release updates
PR pending for BLS and SSZ
- to be released soon
Note: v0.10.0 had small bug fixes, 0.10.1 to be released by end of tomorrow
Remerkleable: significant improvements to Pyspec speed —> enable more complex/interesting tests in the future
—————————————————
Beacon Fuzz:
Blog post released: https://blog.sigmaprime.io/beacon-fuzz-01.html
-> Focus on detected bug in Nimbus in validator
-> Bug detected in Trinity
- Python name clash between pyspec and Trinity: should be solved on Monday
- Working on Java
- PR: skip BLS verification on Nimbus
- Fuzzer will be updated to v0.10 once more clients are on v0.10
Terence - Q: fork choice spec test
2 independent formats people are working (Harmony and Lighthouse)
—————————————————
Client updates
Artemis: v0.9.4 merged in master
v0.10.0 ready but not merged yet (waiting for 0.10 testnet)
(?) sync, discovery
optimisations in progress
officially changing the name: Teku
Lodestar:
- 0.9.2 merged, working on 0.9.3
- working into integrating the new SSZ library in Lodestar
- 1000x times faster
- allow mutable merle tree as SSZ objects
- enable lodestar usage on main net
- simpleserialize.com not updated yet (missing some tests)
- new team member: Frankie, onboarding in progress
Nethermind:
- Working on P2P using Rust library for QUIC
- (?)
Trinity:
- Updating to 0.9.3
- Lots of PRs to update py-libp2p to a new concurrency backend
- Discv5 implementation
- experiments with lighthouse
Q from Danny: explain testiest struggles
Prysmatic:
- (?) (very fast speech)
- biggest issue: consumption
- memory fixed
- CPU bottleneck
- 50 peers seen per node
Lighthouse:
- Adaptating protolambda fork choice
- (?)
- (?) work-stealing scheduler
- fork choice bug in testnet
- —> led to bug in syncing
- Testing syncing with adversarial peers
- (?) subnets change
- ++ community engagement
- Hiring more developers
- contracting on develops work for testnets, managing 100~1000 nodes on AWS
- 20 peers seen per node
Danny: 1000~10000 peers seen per node would be a target
Nimbus
—————————————
Proto
Details on remerkleable
—————————————
Research updates
Dankrad: Phase1, replace proof of custody?
TxRx:
Mikhail working on Eth1->Eth2 bridge
Alex: Decentralized time sink (?)
Joseph: cross-shard transaction
Anton: Discovery v5 testing
Rhea: EE tooling
Sam: Phase 2
writeup in progress
- Eth1 -> Eth2 transition
- details on push/pull models
- roadmap on simulation
Runtime verification audit:
- published and up for review
- https://runtimeverification.com/blog/end-to-end-formal-verification-of-ethereum-2-0-deposit-smart-contract/
- https://github.com/runtimeverification/verified-smart-contracts/blob/master/deposit/deposit-formal-verification.pdf
Networking:
- Call on Jan 29: https://github.com/ethereum/eth2.0-pm/issues/124
Proto: dropping message already aggregated
—————————————
Spec discussion
Dual key voluntary exit: https://github.com/ethereum/eth2.0-specs/issues/1578
Mamy: comment on crypto spec blending design rationals and implementation
Ben: -> weekend project, annotated spec with design rationale
Events
Discord channels for Denver, Paris and (?) events
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment