4

Please correct me if I am wrong in any of the following statements.

All the ETH for ETH2 staking are sent to the Beacon Deposit Contract address.

Choose a random validator from Beaconscan and we can find it made a deposit transaction of 32 ETH using this EVM address.

Naturally, this transaction contributes to the balance history of Beacon Deposit address.

We can also find this 'validator' has a balance of ~34.2 ETH at the time of this post, which is as expected as it has accumulated ETH2 and POS rewards (at least for the consensus layer part).

My question is that, if the rewards part, i.e. the additional ~2.2 ETH for the above validator are reflected in any of the past transactions of the Beacon deposit contract.

Otherwise, the balance of the Beacon deposit contract 'does not contain' the rewards part for all its depositors. Then, is there a way for me to get an estimation of the total rewards for the ETH2 staking, which is not a very small part of the total ETH supply.

1 Answer 1

3

Okay, so I will go over each statement step by step.

All the ETH for ETH2 staking are sent to the Beacon Deposit Contract address.

Here just to make a small precision, when you talk about 'ETH2 staking' I assume you mean the initial stake of each validator. Because indeed rewards are not taken into account in this statement, and this will impact your following statements.

Choose a random validator from Beaconscan and we can find it made a deposit transaction of 32 ETH using this EVM address.

Yes and no; yes every validator has made a transaction of 32ETH to the deposit smart contract, but no you won't find a transaction made from the validator's address.

If I take a random transaction1 to the deposit smart contract, we can see two important lines in the overview of the transaction:

From: 0xc1a95d5f674f809b80d768c12cad12fbeb5c370c

and

Beacon Chain Deposit: Deposit of 16 Ether for Eth2 Validator PubKey0xb3496b5b...

The first one is the address sending the 32ETH, and the second one is the address that can be found on Beacon scan as one of the validators: 0xb3496b5be2708bb72498102ff7dcb14b188fec6cac824dc7d9d131581319f2e1c699bb90b04c333aa9a06f113acd7a33

We can also find this 'validator' has a balance of ~34.2 ETH at the time of this post, which is as expected as it has accumulated ETH2 and POS rewards (at least for the consensus layer part).

As of the merge, all rewards linked to the consensus are on the consensus layer. And no information2 is transmitted to the execution layer. This means that you have no way of knowing how much a validator received rewards by looking at etherscan. You'll have to look at beaconscan necessarily.

Hopefully, the last paragraph answered your last question.


  1. The transaction must be old enough so that the validator has been added to the beacon chain. Basically, don't take the last page of the deposit smart contract internal transaction.

  2. There is one exception to this rule, see the edit part of this post for more explanation.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.