Skip to content

Instantly share code, notes, and snippets.

@mratsim
Created August 29, 2019 15:15
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/b481ee7c598353298f111059d688be0c to your computer and use it in GitHub Desktop.
Save mratsim/b481ee7c598353298f111059d688be0c to your computer and use it in GitHub Desktop.
20190829 - Eth 2 implementers call 24

2019-08-29 - Eth2.0 Implementers Call 24

Nimbus

Support:

Networking:

  • Focus on interop with Rust, minimal gossipsub working
  • TCP transport done
  • Minimal libp2p implementation via SecIO in progress

Eth1:

  • Validators/deposits from Eth1 almost done

Consensus:

  • A couple of justification and finalization issues

Tests:

  • so far relied on simulations but merged several unit tests and mocking routines based on pyspec to initialize arbitrary state, attestations, blocks.
  • Focus: Parsing and running the new SSZ tests for interop
  • CI takes a long time

Perf:

  • benchmarks on crypto
  • scaling of attestation processing/justification/finalization on a single node: 2k validators on a laptop.

Testing

D: v0.8.3 release + tests (~the same as 0.8.2)


Client updates

Nimbus

Shahan (Artemis)

... benchmarking BLS

Terence (Prysm)

New DB initial sync Networking spec ... WIP: updating codebase to 0.8.2 Looking into Slashing detection and prevention algorithm

Paul (Lighthouse)

debugging Go<->Rust libp2p gossipsub cold/hot databases ergonomics of lighthouse for interop

Dmitrii (Harmony)

Passes 0.8.3 specs easy to pass but hope it's the last change of test formats. libp2p integration and discovery missing at the moment Hopefully by next week. New attestation pool

Hsiao-Wei Wang (Trinity)

Skipped 0.8.2 tests, WIP 0.8.3 tests (...)

Cayman (Lodestar)

Progress on sha256 AssemblyScript impl --> fastest JS impl for certain types of inputs Quickstart for interop BLS optimizations


Research updates

V: (...) immediate scalability similar to plasma without the complexity Might be relevant to Eth2 Exec Environment

J: Review of phase 1

  • fork choice fix
  • universal slashing condition (reduce complexity) Phase 1: complete polished and tested by Sept 31 (but not frozen)
  • SNARK proof system: Plunk (old construction SONIC has huge performance hit) Aztec project

Nicolas: Proof for Handle protocol, paper will be updated (no change in the protocol)

Musab: (...)

Deposit contracts - Vyper merged the compiler fix


Networking

Raul (Protocol Lab)

  • contributions:
    • decrypting SecIO traffic
    • dissectors for (...) to debug introp issues
    • handshakes
  • visualizations

wireshark dissectors: demo: https://drive.google.com/file/d/1B6pqFZFqC3uuScNBkpE6MEoFgXGxXg-n/view https://github.com/michaelvoronov/secio-dissector https://github.com/michaelvoronov/go-libp2p-secio

meshsim visualisation with gossipsub: demo: https://www.youtube.com/watch?v=jRBnead8Qss https://devpost.com/software/libp2p-gossip-pubsub-visualisation https://github.com/valer-cara/meshsim-node-p2pd

noise handshakes in go: https://devpost.com/software/go-libp2p-noise-the-new-security-transport-for-eth2-0 libp2p/go-libp2p-noise#2

gossipsub profiling: https://github.com/protolambda/go-libp2p-gossip-berlin/ https://devpost.com/software/go-libp2p-gossip-berlin

Paul:

Preston:

  • Use cases/requirements document:

Interop

Survey: Zak Cole & Proto no issue with version 0.8.2 but issues in testing

everyone is close to a working libp2p stack probable bottleneck syncing

Starting from arbitrary state? Disk format? SSZ, Json, YAML --> would help if you have the possibility to dump SSZ state

Q Raul: Did other clients tried to connect to one another

Hackmd: for people to be able to run each other clients ahead of time

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment