MetaMask / MetaMask/metamask-extension

Log signed messages in state logs

Open
#13,694 15 comments 4 reactions 0 assignees View on GitHub
area-signatures epic team-confirmations-planning team-extension-platform type-enhancement type-security
Dominant language
TypeScript
Stars
13.2k
Forks
5.6k
Avg merge
2d 5h
Merged PRs (30d)
451

Description

We should be storing a history of signatures, especially as we move to a more counterfactual/metaTx world, and more txs are replaced by signatures.

Especially in the wake of the OpenSea/Wyvern phishing campaign, having good forensics of past signatures would be extremely useful.

Acceptance criteria:
- Log all signed messages (signTypedData, signTypedData_v[x], personal_sign, eth_sign)
- Log the origin that proposed the messages
- Log when the message is signed
- Results should be available in state logs

Stretch goals
- Show these signatures in the [state-log-explorer](https://github.com/MetaMask/state-log-explorer)

Contributor guide

Open the contributing guide

Research direction

Trace the signing entry points for signTypedData, signTypedData_v[x], personal_sign, and eth_sign, then inspect how state logs are produced. Done means every signed message records its proposing origin and signing time and is available in state logs. The state-log-explorer stretch goal is separate.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
blockchain, observability, security
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.