--- tags: newineth2 description: The latest update on Ethereum 2.0 development image: https://benjaminion.xyz/f/favicon-96x96.png --- <style> a {text-decoration: underline;} a {color: #0000ee;} a:visited {color: #551a8b;} </style> # What's New in Eth2 - 8 May 2021 ![My avatar](https://benjaminion.xyz/f/ms-icon-144x144.png =32x32) Ben Edgington (Eth2 at [ConsenSys](https://consensys.net/) — all views expressed are my own) Edition 68 at [eth2.news](https://eth2.news/) ## The Beacon Chain Over 132k active validators. 4.2m ETH staked, worth $16 billion as of writing 🤯 And there's been a recent uptick in the [rate of new deposits](https://duneanalytics.com/hagaetc/eth2-0-deposits). All has been running smoothly since the little wobble two weeks ago. Here is Prysmatic Labs' detailed [retrospective](https://medium.com/prysmatic-labs/eth2-mainnet-incident-retrospective-f0338814340c) on the incident. Unfortunately, after a wonderful run of two whole months without any slashings, there were [three isolated incidents](https://beaconcha.in/validators/slashings) in the last month. I don't have any information about the causes. ## Staking I am really delighted with this one: watch Adrian Sutton sync up Teku from scratch in [approximately a minute](https://www.youtube.com/watch?v=ce9uVRl23zI). The demo downloads the initial state directly from Infura, although you could use any beacon node that you know is in sync, or a file you've downloaded containing the state. This is a game-changer for both staking services and individual stakers. When it is this quick to sync a beacon node---seconds [rather than hours](https://twitter.com/benjaminion_xyz/status/1388182493510131719)---you can basically forget about maintaining persistent storage, and funky redundancy setups. If you want to check how your well your validator is performing its attesting duties, then take a look at Paul Hauner's [spreadsheet tool](https://www.reddit.com/r/ethstaker/comments/n692yp/granular_validator_performance_tracking/) and [explanation](https://hackmd.io/xQfi83kHQpm05-aAFVV0DA?view). This gives more insight than the single "Effectiveness" number provided by Beaconcha.in, and you get to see a comparison with the global average performance. Do you know about secret shared validators? If not, now is a good time to catch up. Alon Muroch has written up the recent [SSV Phase 1 testing round](https://medium.com/bloxstaking/secret-shared-validator-ssv-phase-1-testing-summary-5e3f5ab06083). ## Rayonism [Rayonism](https://rayonism.io), as well as being a style of Russian abstract art, is the ongoing effort to hack together an Eth1/Eth2 merged testnet with sharding. It's happening under the EthGlobal [Scaling Ethereum](https://scaling.ethglobal.co/) hackathon banner, though will certainly extend beyond that. Lukasz Rozmej from the Nethermind team produced a very nice [video tutorial](https://www.youtube.com/watch?v=UFcjPmBb0fs) demonstrating how to set up a merge testnet using Nethermind for the Eth1/execution side, and Teku for the Eth2/consensus side. The big news is that the first devnet, named Steklo, lived for a few hours on Friday the 30th of April :tada: Steklo is Russian for "glass", and it was [expected to be fragile](https://twitter.com/protolambda/status/1388093066993668098). And so it proved to be. In fairness, all the teams were diving in without the benefit of having had any test vectors to prepare with, so it was very much a first, blind attempt. Decrypt Media wrote a little [Steklo preview](https://decrypt.co/69635/ethereum-moves-toward-eth2-super-experimental-testnet). In all, [twelve combinations](https://twitter.com/protolambda/status/1388093072936951811) of clients were represented: each of Nethermind, Besu, and Geth/Catalyst paired with each of Teku, Nimbus, Lighthouse, and Prysm. Lukasz provided a [summary](https://discord.com/channels/595666850260713488/826479341784662056/837696090194444348) on the Rayonism Discord channel: > - Lighthouse had consensus issue and forked from start (state root issue), but on this fork worked well with all execution engines > - Prysm had an issue (general or consensus, didn't get it) and got stuck at genesis > - Besu or Teku sometimes didn't agree with other clients, but eventually they got to consensus. When it splits, it splits to to sets (Teku-Geth, Teku-Nethermind) and (Teku-Besu, Nimbus-Geth, Nimbus-Besu, Nimbus-Nethermind) > - Nimbus has some issues talking to Nethermind probably on transport layer on Nimbus side, but it needs more investigation from Nimbus and maybe Nethermind team, eventually it works most of the time - some restarts might be needed In short there was lots going on! But, many things went right, and overall the whole exercise was very encouraging. After some fixes, Lighthouse was later able to come into consensus with Teku and Nimbus. The last week has been spent preparing some common test vectors so that clients can debug separately before coming together again. The plan is to spin up a longer-lived merged devnet early next week. ## Altair Altair is the relatively minor beacon chain update planned for mid-year. As per the recent [devs call](#Implementers), client teams are progressing reasonably well with the implementation of the Altair spec. We took the opportunity to sketch out a planning timeline (not committed): - Altair spec freeze around the 21st of May. - Short-lived joint testnets early June (not testing the fork transition, just the Altair spec) - Try forking the current testnets towards the end of June. I imagine that Pyrmont will be first, so best migrate to Prater soon to avoid instability. - Late July/early August for deployment to the beacon chain. There are a few things to sort out before the spec freeze. In particular, what to do about [this issue](https://github.com/ethereum/eth2.0-specs/issues/2314) (missing an epoch's worth of rewards during the upgrade). ## The Merge Most Merge activity is focused on Rayonism for now. Still, after Rayonism, a bunch of work remains. Mikhail Kalinin summarised the open topics in [a Discord post](https://discord.com/channels/595666850260713488/826479341784662056/840126264454021170) on the Rayonism channel: > First, transition process (a.k.a. docking). We need to figure it out, code and try in test/dev nets. Second, sync algorithms; design work is already happening, then implementation and testing. Block proposal optimisation techniques, communication channel protocol, whether it will be JSON-RPC or REST; user's JSON-RPC modifications (add finalized block method). Writing concrete EIPs that describe execution layer modifications. Solving BLOCKHASH randomness problem. Multiple rounds of various kind of testing. Chain tools, get evidence that they work. Infrastructure update, the main question is how block explorers will look like. We have a lot to do, but there is a large degree of optimism about delivering the Merge [by the end of the year](https://twitter.com/trent_vanepps/status/1387837123756240898). More cautious types are looking at Q1 2022, but nobody is currently expecting it to be later than that. ## Tooling My former colleague, [Mostafa Farghaly](https://github.com/mFarghaly) has made [a release]((https://github.com/kotalco/kotal)) of [Kotal](https://www.kotal.co/): > Kotal operator is a cloud agnostic blockchain deployer that makes it super easy to deploy highly-available, self-managing, self-healing blockchain infrastructure (networks, nodes, storage clusters...) on any cloud. It [includes support for](https://twitter.com/kotalco/status/1390015656939118593) Teku, Nimbus, Lighthouse, and Prysm nodes, as well as IPFS and other Web3 things. ## The Great Explainers Vitalik wrote up [some less-appreciated benefits of Ethereum's PoS](https://www.reddit.com/r/ethereum/comments/mxo151/some_lessappreciated_benefits_of_ethereums_pos/) on Reddit. Alex Stokes has made a helpful [validator lifecycle flowchart](https://github.com/ralexstokes/ralexstokes.github.io/blob/master/assets/pdf/validator-lifecycle.pdf), and shared the [source code](https://gist.github.com/ralexstokes/cf41fa6fe33c1620b21899e44157f68a) for generating the chart. In Viktor Bunin's [eth2 update 014](https://bisontrails.co/eth2/014/) he considers what it might look like if an incident similar to last week's occurred on the beacon chain after The Merge. ## Media and Stuff Post beacon chain incident, client diversity continues to be a big topic. Phil.eth wrote a very nice overview, [Diversity for a healthy beaconchain](https://phil-eth.medium.com/diversity-for-a-healthy-beaconchain-645ee1cea7ec): it's not just about the client you run. Diversity is also on Superphiz's mind: [Ethereum Client Diversity & How To Solve For It](https://www.youtube.com/watch?v=1hZgCaiqwfU). This is a great reminder that [State of the Stake](https://www.youtube.com/playlist?list=PLOB9GGXGcc31_rKi1PlG0kGYf35e6l1wy) exists and how good it is. Speaking of Phiz, here's the EthStaker community's [April in review](https://ethstaker.cc/ethstaker-community-april-in-review/). Still my favourite people in the world[^fn1]. Anthony Sassano wrote in the Daily Gwei about my favourite topic: The Merge and the [end of proof of work](https://thedailygwei.substack.com/p/the-end-of-an-era-the-daily-gwei). And Status has a nice article, [Ethereum is Green](https://our.status.im/ethereum-is-green/), with an impressive demonstration of super-low post-merge energy usage :banana: Camila Russo interviewed Vitalik Buterin and Aya Miyaguchi at the [Ethereal Virtual Summit](https://www.youtube.com/watch?v=bIUir2I-XxU). Eth2 stuff starts at [14:04](https://youtu.be/bIUir2I-XxU?t=844). A highlight from [Decrypt Media](https://twitter.com/decryptmedia/status/1390675125410926595): > An exchange at #EtherealSummit just now: @CamiRusso: "Is it safe to say we'll get Ethereum 2.0 by the beginning of next year at the latest?" @VitalikButerin: "That sounds reasonable." Coindesk's Valid Points newsletter continues to be a good read: [April 28th](https://www.coindesk.com/after-proof-of-stake-pos-more-upgrades-ethereum-2-0-vitalik-buterin) and [May 5](https://www.coindesk.com/eth-2-0-validators-earn-record-3m-eth-soars-past-3k). As for the Mapping Out Eth2 podcast, on [April 29th](https://www.coindesk.com/podcasts/mapping-out-eth-2-0/eth-blocks-stop) we talked about the beacon chain incident and client diversity. And on [May 6th](https://www.coindesk.com/podcasts/mapping-out-eth-2-0/staking-ethereum-more-lucrative) we discussed Steklo, and the expected higher returns for validators after The Merge. [^fn1]: I'd appreciate it if you didn't mention this to my family. ## Research Vitalik has a proposal for allowing validators to [change their signing keys](https://ethresear.ch/t/adding-pos-validator-key-changes/9264?u=benjaminion): it provides a way to delegate your stake to a pool, while retaining a degree of control, and also remaining accountable for slashable behaviour. ## Regular Calls ### Implementers Client implementers' call #63 took place on the 6th of May. * [Agenda](https://github.com/ethereum/eth2.0-pm/issues/217) * [Video](https://www.youtube.com/watch?v=qhcMxBh0GEc&t=126s) * My [quick notes](https://hackmd.io/@benjaminion/B1wRBDWdd), and [Tweet-notes](https://twitter.com/ralexstokes/status/1390370217524568064) from Alex Stokes. We discussed an issue with the upgrade to Altair that would result in one epoch's worth of validator rewards not being paid out, unless we adopt [a one-off fix](https://github.com/ethereum/eth2.0-specs/pull/2373). Views were mixed on this. The fix adds implementation and testing complexity for relatively little reward. We also mapped out a [tentative timetable](#Altair) for delivering Altair. ### The Merge Merge call #3 took place on the 29th of April. * [Agenda](https://github.com/ethereum/pm/issues/305) * [Video](https://www.youtube.com/watch?v=KAm718N_bvA) * [Meeting notes](https://github.com/ethereum/pm/blob/master/Merge/Meeting%2003.md) Lots of detailed discussion and planning around Rayonism. Another nugget: Dmitry Shmatko has been working on validator balance withdrawals, and is extending the work to enable partial withdrawals (withdrawing a validator's staking rewards, but leaving the principle). There are plans to test this on the Rayonism networks at some point. ## In other news - Another [bug in Go](https://groups.google.com/g/golang-announce/c/cu9SP4eSXMc) was found and fixed via the [Eth2 Bug Bounty Programme](https://ethereum.org/en/eth2/get-involved/bug-bounty/). * * * [![[Twitter]](https://benjaminion.xyz/newineth2/img/twitter.svg =40x40)](https://twitter.com/benjaminion_xyz) Follow me on [Twitter](https://twitter.com/benjaminion_xyz) to hear when the next edition is out 🙌. [![[RSS]](https://benjaminion.xyz/newineth2/img/rss.svg =32x32)](https://benjaminion.xyz/newineth2/rss_feed.xml) We also have an [RSS feed](https://benjaminion.xyz/newineth2/rss_feed.xml). [Advertising](https://hackmd.io/@benjaminion/eth2_news/https%3A%2F%2Fhackmd.io%2F%40benjaminion%2Fadvertising) on this newsletter. [Give Feedback](https://docs.google.com/forms/d/e/1FAIpQLSfkESc4CmNfRGHHjWfNeF3ceLwrXDvynetda4sKfJFJ71Oabw/viewform).