MetaMask / MetaMask/metamask-extension

ETH 2.0 deposit contract UI + verification

Open
#8,708 0 comments 0 reactions 0 assignees View on GitHub
type-enhancement
Dominant language
TypeScript
Stars
13.2k
Forks
5.6k
Avg merge
2d 5h
Merged PRs (30d)
451

Description

**What problem are you trying to solve?**
When becoming a validator on eth 2.0 a user must deposit 32 ETH to a dedicated contract with data indicating his validation and withdrawal keys (BLS keys).
Those keys are extremely important as they will serve as his keys on the beacon-chain.
Currently metamask does not parse the transaction request making it hard to verify that the correct keys are passed along with the 32 ETH.
Many are expected to become validators, many still will probably use metamask for the deposit transaction.

**Describe the solution you'd like**
A minimal solution could simply detect the "to" address (matching the deposit contract) and parse the data passed in the transaction, this will enable the user to verify he sends the data correctly.

Contributor guide

Open the contributing guide

Research direction

Start by reviewing MetaMask's transaction request handling and the ETH 2.0 deposit contract flow described in the issue. Implementing this would detect the deposit contract address, parse the transaction data containing the validation and withdrawal BLS keys, and present enough information for users to verify the 32 ETH deposit.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
blockchain, frontend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.