[create] encrypt requests
MantisClone opened this issue · 0 comments
MantisClone commented
Problem
Today, the Create Request app creates invoices in cleartext.
Description
This issue is to upgrade the app to create encrypted invoices.
Design
TODO: screenshot and figma link
Considerations
Encryption requires the payee and payor's public keys. The payee's public key (corresponding to the payee's Ethereum address) can be acquired from MetaMask using the eth_getEncryptionPublicKey
RPC. It's unclear how to do this with other wallet types.
It's impossible to get the public key from an Ethereum address for which you don't also know the private key. Thus, the payor will need to provide the public key so that the payee can enter it when creating the invoice.
Subtasks
- Use Metamask's
eth_getEncryptionPublicKey
RPC to get payee's public key - Add form field for payor's public key
- Add a checkbox under "Advanced" that reveals fields for payor public key