MetaMask / MetaMask/metamask-extension

api to store and retrieve user's encrypted data

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

Description

Hi,
I am building a game that can potentially run without server and use only web3 api. The only gotcha is that it require to store data between transactions.

Currently I store data in localStorage but this means that a player has to go back to the device where the game started in order to continue playing.

I was thinking to encrypt that data and store it on our server. Unfortunately web3 does not have such api yet. I could of course encrypt using another key that the player memories/record somewhere but a web3 api would be much better.

But I would like to go further. I think it will be common for dapps to require secret data to be kept between several transaction (ens registrar dapp for example) and web3 should provide an api to not only encrypt data but to store and retrieve it. If it become a standard, dapps can then rely on that feature to give a better experience to their user.

Node themeselves could provide a simple api to store and retreive encrypted data.

There are of courses security issues arround that but we could follow what browser do with domains and only page retrived for a specific domain could retrive data saved at that same domain.

What do you think?

Would metamask be interested to provide an encrypted storage space for its user ?

It would be of course synced across all metamask instance using the same vault

Contributor guide

Open the contributing guide

Research direction

No file, test, or entry point is named. Review the proposal's encrypted storage, retrieval, domain isolation, and vault synchronization requirements with maintainers first; the issue does not define an implementation scope or a testable definition of done.

Written by the indexing model from the issue text.

Assessment

Domain
api, security
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
15/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.