Description:
Make automatically two accounts at creation, one which will be used for spending operations (sending tokens, signing, executing smart-contract operations, …) which would be hidden, and one which will hold the assets.
When the user do sending, signing, smart-contract operations, the amount of tokens required for the operation is automatically and transparently transfered from holding wallet to spending wallet, and used for the operation.
If at the end of operation some tokens remains, enough to be useful to transfer back to holding wallet, then they are automatically and transparently transferred back to holding wallet.
When user need to be paid, then the address that he can copy is the holding wallet address, and for all spending/signing/smart-contract interactions operations, that’s the spending wallet and its address that is visible to the receiver of the operation.
Purpose:
Some cams are operated by making user signing approvals for scamming contracts, generally directly after a legitimate operation (ex: just after a mint).
These kind of scams are exploiting the fact that most of the time users are using one wallet. To avoid that a user can create 2 wallets, a so-called “burns wallet” used for spending operations (sending tokens, signing, …) and a user wallet, which is used only for receiving assets.
This feature aim to automate this good practice of using two wallets, in a completely transparent way and by that automatically protect users of such scam as this way a malicious contract would always find always no token to steal from the spending wallet as it will never hold tokens.
The purpose to make it transparent and automatic is to make it easy to use, but of course advanced users would be able to choose to view and have access to both wallets via an option in the settings of MetaMask.
Extension/Mobile/Both: Both