20190815 - Eth 2.0 implementers call #23
Nimbus
Team in Berlin.
New joiner:
- Dmitry
- Libp2p, networking
Core:
- SSZ implemented
Eth1 Deposits:
- Continued on the equivalent to Web3.py/Web3.js started in January
- Can interact/interop with ETH1 deposit contract from any web3-enabled Eth1 client.
Eth1 Deposits:
- Bootstrapping Eth2 genesis from Eth1 via Ganache: https://github.com/status-im/thundercloud
Networking:
- Implemented the networking spec
- libp2p works again on Windows. Can be tested with testnet1
Testing
-
BLS tests were not included by mistakes
-
0.8.3 --> include tests, typo fixes.
- Target: Monday or Tuesday
-
will be interop target
-
Vyper compiler bug in deposit contract
- will add a checksum to precompute the expected SSZ root
- not a target for interop
-
Mid-Sept fixes planned:
- remove light clients machinery that adds substantial hashing overhead
- active validator indices for example
- maybe remove transfers
- remove light clients machinery that adds substantial hashing overhead
Client updates
Yeeth:
- Will use Lodestar for part of validator client.
Harmony:
- Validator API finished
- Eth1 integration via gRPC, PR open
- P2P daemon
- Noise implementation done
- Phase 0 JVM libp2p implementation hopefully closed to finish and ready for interop
- started on 0.8.2 impl
- lots of testing to be done
- started on QA, fuzzer and property testing
- beacon chain fuzzer for start but maybe network stack as well
Trinity (HWW)
- Focus on interop requirements
- py-libp2p module:
- SecIO for interop
- py-libp2p module:
- Beacon-chain receive (?) server to handle (...)
- Disc v5 for Trinity Eth 1 client -> exploring for usage in Eth2
Artemis (Shahan)
- Intro Shahan
- SSZ
- LibP2P, noise
- state tests
- Use Rust-libp2p into Artemis
Lighthouse (Adrian)
- work on database:
- probably be using 2 databases a hot and a cold one
- networking stack update
- improving sync algorithm
- working on BLS standardization
- Eth1 deposit contract
Prysm (Terence)
- fork choice
- optimizations
- BLS improvement for verifications and aggregate signature with significant speedup
Lodestar
- New joiner
- focus on Assemblyscript and speedup crypto primitives
- monorepo
- spec tests
- SSZ types published on NPM
- beacon chain config on NPM
- partway through disc v5
- target: fix libp2p protocol
Survey: Road to interop
Will be organized by Proto and Whiteblocks
Danny: Raul wanted to do something similar from a libp2p POV
Networking
Disc v5 (Felix)
- https://github.com/ethereum/devp2p/blob/master/discv5/discv5.md
- Audit of the spec by LeastAuthority a week ago
- So far focused on Kademlia
- still 1-2 weeks
- Auditors require more explanation from Felix (?) for the topics
- Felix's implementation: same point as the spec
- Adrian: interested in interop tests
Libp2p (Matt)
- Bounty project will be kicked off at Eth Berlin https://github.com/libp2p/devgrants
Whiteblocks (Zak)
- Webinar in a couple of hours
- Target audience: everybody
- https://zoom.us/webinar/register/WN_GjWAB_7qQUyN67gIQ43YDg
Q (Shahan): Where to discuss about handshakes for discv5 (while Noise already has handshakes) --> libp2p repo
Networking load
https://hackmd.io/ZCOiGwjLRy6il6yuAnF05w - Block size and attestations
Mikhail Research in aggregation strategy -> agg strat doesn't seem to be a bottleneck but attestations could.
For interop: will use naive strategy
https://hackmd.io/iHDZAzwlRE2uwv3hsB-9Gw - Scalability and BFT in context of p2p
Research updates
Vitalik:
- [Merged] Modified Merkle proof verifications (use generalized indices) ethereum/consensus-specs#1186
- [Pending] Persistent committee root (?)
- [Pending] Changed in light clients syncing algorithm
==> Enough to start building light clients but not enough until phase 1 (?)
Justin Drake:
- 5 ETH/1000 DAI bounties for changing the spec in a substantive way: ethereum/consensus-specs#1345
- new BLS standard, plan to integrate it in dev, master in the future
- new constant time hash function
- rest is minor changes to BLS
- not fully ratified yet
- will not impact interop
- Eth will be the first launch to use the new BLS
- Related stadnardiztion:
- checksums, ID wallets
- Light clients design -> Awesome
- Quantum apocalypse insurance
- Secrets associated with validator deposits via lamport signature which is quantum secure.
- Can be done without any substantive change to phase 0
- Optional
Will Vuellaneva (Ewasm)
- Benchmarking SSZ in a simple transfers ExecEnv vs RLP
Musab Alturki (KEVM - Formal Verif)
- Phase 0 almost done
- need to update to 0.8.2
- then pass testing
Interop locking:
- Waves:
- Q&A tomorrow on Telegram
- catered
- 30 people + 10 people WASM
Collectible for participating in testnet and participating in Eth2 launch
Fuzzing (Adrian)
(?) fuzzer Worked for SSZ
Can't update on differential fuzzer --> Justin: gone quiet --> Proto: primitives are there.