5 ms·
Ask HN: Does the Ethereum foundation really not develop a post-Merge client?
TL;DR: To use the new Proof of Stake network, you'll need 2 pieces of software in parallel. It seems only one of those is developed by the Ethereum foundation - implementations of the other one are only developed by various seemingly commercial entities - despite the foundation holding $ 1 billion in assets (see comments).
Now that the PoS-merge is close, I tried to find out how to actually use it.
https://ethereum.org/en/developers/docs/nodes-and-clients/ says:
> After The Merge, both execution and consensus clients must be run together in order for a user to gain access to the Ethereum network.
Here are the lists of implementations of those two clients:
https://ethereum.org/en/developers/docs/nodes-and-clients/#execution-clients
https://ethereum.org/en/developers/docs/nodes-and-clients/#consensus-clients
So they do develop an execution client, commonly known as "geth".
It's on their own GitHub: https://github.com/ethereum/go-ethereum
But the 5 consensus clients not only have websites which aren't ethereum.org - they are in fact also hosted on different GitHub accounts:
https://github.com/sigp/lighthouse
https://github.com/ChainSafe/lodestar
https://github.com/status-im/nimbus-eth1 (yes, this is also for eth2, see "About" at top right)
https://github.com/prysmaticlabs/prysm
https://github.com/Consensys/teku
Further, all of these 5 institutions seem to be companies from the looks of their website, not non-profit foundations. (Please correct me and pardon me if that is not true, I don't have the time to navigate through all these websites to figure out their precise legal status.)
So is it true that there is no official reference implementation to run the post-Merge, Proof of Stake Ethereum?
Only 3rd party software which is somehow endorsed but which you have to choose on your own still?
Sure, more choice can be nice, but it would seem advantageous to have at least one trustworthy reference client instead of the users having to decide which of 5 commercial entities they trust?
- RjQoLCOSwiIKfpm 4y agoNotice: I get that they advertise this as diversity. But from the perspective of someone who just wants to use the software it would be a lot easier if I don't have to sieve through 5 commercial websites. Also: For the $ 1 billion they hold in assets [0] I'd expect them to provide at least one full set of usable software from it, not just specifications on how to write the software - which is what they seem to only be producing now? They already cancelled their GUI wallet some years ago (https://github.com/ethereum/mist https://github.com/ethereum/mist) which was kind of weird already considering that people did have money in it already. But you could at least resort to using geth as a terminal UI client. Now it seems ETH holders won't be able to access their funds using fully official software at all, which is kinda "meh", no matter if you're pro-crypto or against. [0] Calculated with today's Ether price, based on: https://www.coindesk.com/business/2022/04/19/ethereum-foundation-holds-13b-in-ether-300m-in-non-crypto-investments/ https://www.coindesk.com/business/2022/04/19/ethereum-founda...
- wmf 4y agoI guess the foundation is prioritizing the health of the overall ecosystem (diversity) over the convenience of people who just want to get started. Perhaps they see Ethereum as backend infrastructure not as a user-facing system.
- RjQoLCOSwiIKfpm 4y agoWell, yes this might make sense, but it reminds me of a situation where there is full diversity: Chinese consumer products on Amazon. Is it enjoyable to buy stuff out of this very large diversity? Rather not, because most of it is garbage :| It can be nice to have at least one known-to-be-good version of things :)
- aaaaaaaaata 4y agoLayer 2
- landemva 4y ago> was kind of weird already considering that people did have money in it already. Wallets are signing software with various pretty interfaces. Wallets can sign messages to access things on-chain. Wallets don't store gold coins actually in the wallet. Someone testing recoverability can take the recovery phrases and put them in a different wallet on a different continent. Both old and new wallets will show the coins and will be able to sign messages.
- RjQoLCOSwiIKfpm 4y agoOh I was fully aware of that, but nevertheless I do not consider it a wise decision to abandon the wallet development: I would say the probability is 100% that a non-zero percentage of users will not be able to figure out how to migrate to a different software and thus lose their money. Also, as said elsewhere, for the billion dollars they got handed they could at least provide the most basic set of software. If you're a cryptocurrency project that would be a wallet.
- clippablematt 4y ago
- jlokier 4y agoThe groups writing client software are at least writing open source software, generally under liberal or GPL licensing. So there's that. They aren't selling the software, although they do tend to establish commercial relationships with some entities. Many of those groups work in companies that do something more commercial with other blockchains than Ethereum, though. Some of the funding for the various implementations comes from Ethereum Foundation (EF) itself. It's not just Geth which is supported by EF funds, but Geth has a special place because of its history. The Ethereum Foundation takes the view that "client diversity" of proof-of-stake validator implementations is a security requirement: https://ethereum.org/en/developers/docs/nodes-and-clients/client-diversity/ https://ethereum.org/en/developers/docs/nodes-and-clients/cl... Shipping an endorsed EF implementation would undermine that requirement. So instead, they publish and regularly update a spec, the major clients are all open source, to some extent the EF has sponsored the development of multiple clients, there is continuous interop testing between all the major clients going on, and the client teams meet at weekly EF meetings. The next such meeting is today (the All Core Devs meeting), and it's conducted in public, you can listen in real time or afterwards on Youtube. You wouldn't see that if they were ordinary commercial companies. Ideally they would like to see client diversity in the execution layer as well (Geth et al), and consider single-client (Geth) dominance to be a weak part of the system. (I am writing an execution layer client that isn't in the list at the moment. Stealth mode, if you like. It's feature is extremely compact storage using a novel database structure, fast storage and network sync, and zk-EVM proofs will probably be coming. The organisation writing it (me) certainly isn't profit seeking with regard to this project (nor paid for that matter; it's a personal side project). Being able to fork and build on other groups' work, as well as test against them, is very useful!)
- RjQoLCOSwiIKfpm 4y agoThanks for your lengthy reply! This is all fine and good, but you're forgetting about a central aspect of reality: In the end, a user realistically has to decide for one piece of software. You can't expect a single user to store their money across 5 different vendor's software. Probably not even 2. So each user must decide. Now how are they supposed to do so? Throw a dice? Have randomness decide what secures potentially thousands of $ worth of your money? That seems like an impressively reckless thing to ask of your users. And beyond that it's just unrealistic. You can't expect that people will be fine with storing their money in an effectively random fashion. If money is involved, people will want clear guidance on what is the most secure way, not "what are 5 different ways of which we don't tell you which one is the best". If they decided to go for a sane approach and provide a known-good client, they could still develop N others and use them as unit tests to test the primary client against. Or just get people to use them without forcing them to do so. E.g. they could just ask users nicely.
- TimJRobinson 4y agoThey're aiming to be the equivalent of the W3C. They write the specifications and private companies build the clients, just like web browsers for the internet. Ethereum's aim is to be a neutral platform for exchange of value, as big and important as the internet. Having one company make the official client would undermine that.