L’ottimo Danny Ryan continua la sua opera di aggiornamento della community su quanto stia accadendo all’interno del mondo Eth2.0-beacon chain-deposit contract-Pos (https://blog.ethereum.org/2019/12/05/eth2-quick-update-no-5/).
Gli aggiornamenti sono molteplici ed importanti, dalla prima testnet multi client di eth2.0 con l’arrivo di shasper all’interno della rete Prysmatic Labs, per passare ai block explorer della stessa, tra cui quello di Etherscan (https://beacon.etherscan.io/) ecc..
Per quanto riguarda il rilascio del Contratto di Deposito=momento di avvio Eth2.0 ci sono interessantissime novità circa la famosissima standardizzazione delle BLS:
“I tanto attesi standard BLS sono stati presentati per un commento pubblico all’IETF Meeting 106. Puoi controllare tu stesso la presentazione e le diapositive. La presentazione è andata come previsto e lo standard è previsto da una serie di progetti a blocchi e (eventualmente) in IETF. Per sancire più semi-ufficialmente questo standard prima che il lungo processo IETF finisca,
Esistono due progetti di pull-request ( ) in fase di revisione nel repository delle specifiche, nonché un’implementazione del nuovo standard in fase di revisione in py_ecc. Una volta completata la revisione, genereremo i nuovi vettori di test BLS per il consumo generale da parte dei clienti di eth2. L’intenzione è di passare il test sullo schema BLS modificato come gennaio.
Gli standard BLS rimuovono anche uno dei blocchi finali per il rilascio del contratto di deposito eth2. Runtime Verification sta attualmente completando i propri report sulla verifica formale e sull’analisi del bytecode del contratto di deposito. Dopo questo possiamo finalmente lanciarlo“
Come al solito, vi riporto integralmente l’aggiornamento
Parity’s Shasper joins Prysmatic’s Sapphire testnet (the first public eth2 multi-client testnet)!
First eth2 phase2 community call to rally the effort
Fix to ensure fork choice head state matches FFG finality info
Shasper joins Prysmatic’s testnet
Parity’s eth2 client, Shasper, successfully joined Prysmatic’s Sapphire Testnet marking the first public multi-client eth2 testnet. This is the exciting start of many multi-client testnets to come in the next month.
You can now pull down the Shasper codebase and with a few commands, and connect to the Sapphire testnet. If you want to give it a shot, follow the instructions here.
Eth2 block explorers launch
Not one but two (!) eth2 block explorers recently launched. Both of these block explorers currently monitor Prysmatic Labs’ Sapphire Testnet, providing slot-by-slot info as validators build the beacon chain.
Bitfly launched their beaconcha.in block explorer a couple of weeks ago and continue to add exciting features by the day. Etherscan just launched their block explorer yesterday, and it, too, looks packed with cool features and data. Both will be great options to monitor Prysmatic’s and other testnets as they come online.
We’re excited to see more and more user/developer tooling being built around eth2 clients and testnets 🙂
First eth2 networking call
Up until this point, we’ve relied upon github issues/pull-requests, adhoc chats, the main eth2 call, and in person meetings to organize the networking components of the eth2 spec. This has largely worked well enough, but researching and architecting a network to support a sharded blockchain protocol is an issue that increasingly deserves some more specific attention and resources.
To this end, we had our first eth2 networking-specific call this week. Although this call is not live-streamed like the general eth2 call, it is public and open to all contributors. Thank you to the p2p networking experts across the various eth2 teams that pushed for this call. I was originally resistant due to the additional coordination overhead, but the first call proved very fruitful and I look forward the next.
First eth2 phase 2 community call
Thank you Will Villanueva from the Quilt team for organizing the first eth2 phase2 community call. Similar to the new networking and light client calls, phase 2 has enough going on to warrant a regular call to keep the research and development more organized.
This first call acted as a general update and survey of the various on-going threads across the many teams and individuals involved. You can read up on the notes here. Subsequent calls are intended to be deeper work sessions on specific technical issues.
A major goal for Phase 2 is to get through the initial wave of stateless protocol research and to use the findings to narrow the scope into a more concrete plan to execute in 2020. These calls are an excellent step forward toward this goal.
Forkchoice state fix
Researchers at San Jose State University led by Yan X Zhang have been diligently working to formalize the joint properties of eth2’s consensus mechanics (Casper FFG) and fork choice rule (LMD GHOST). Before publishing their work, they found a corner case in the interworkings of FFG+GHOST in which a branch of the block tree might include the latest justified/finalized blocks but not actually show those blocks as justified/finalized in the on-chain state. To leave such “non-viable” branches in the fork choice can lead to situations in which a validator’s vote might not be coherent with local finality info and might, in certain scenarios, lead to liveness failures. You can read more about this particular scenario and the proposed solution here.
To address this scenario, we have a fix under review in the specs repo. We expect this fix to be released within the week.
Specification and implementation of the new BLS standards
The long-awaited BLS standards were recently presented for public comment at the IETF Meeting 106. You can check out the presentation and slides for yourself. The presentation went as planned and the standard is expected to be adopted by a number of blockchain projects and (eventually) into IETF. To more semi-officially enshrine this standard before the long IETF process finsihes, I expect the EF and many other projects to more officially announce intended usage soon.
There are two draft pull-requests ( ) under review in the specs repo, as well as an implementation of the new standard under review in
py_ecc. Once review is complete, we will generate the new BLS test vectors for general consumption by eth2 clients. The intention is to switch testnets over to the modified BLS scheme come January.
The BLS standards also remove one of the final blockers for launching the eth2 deposit contract. Runtime Verification is currently finishing up their report on the formal verification and analysis of the deposit contract bytecode. This report is expected to be published by the end of the month for public review, after which we can finally launch this thing 🚀“.
Credits: Danny Ryan