coral-xyz / backpack

🎒 Next level crypto wallet

Home Page:https://backpack.app

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Add methods for encrypting via public key and decrypting via private key

ozyman42 opened this issue · comments

Many potential applications might prefer to encrypt end user data via a public key the user controls rather than encrypting via a user's password (i.e. lastpass), as passwords are a poor UX compared to a web 3 wallet. Metamask currently is the only web 3 wallet I'm aware of which offers the ability to decrypt via private key. Ideally Solana wallets should support this, and ideally all the wallets would use the same algorithm for obtaining a public encryption key and the same asymmetric encryption algo too. In the linked EIP you see a proposal for wallets to offer an RPC for encryption via secp256k1 + ECIES.

Relevant discussion in Ethereum: https://ethereum-magicians.org/t/eip-5630-encryption-and-decryption/10761/128
Metamask SDK:

Related issue in Solana web3.js: solana-labs/solana-web3.js#1367
Related issue in Solana Mobile seed vault: solana-mobile/seed-vault-sdk#144