I am currently involved in an NFT project that recently experienced a security breach, and I am developing a dapp to rectify the situation. Our plan is to eliminate all NFTs from the compromised collection and issue a new set of NFTs using our updated authority. To achieve this goal, the dapp provides two main functions for users:
- Remove the old NFTs from the user's wallet.
- Create new copies of the old NFTs using our updated authority.
However, one major challenge I am facing is the need for both the user and our wallet to sign transactions in order to mint the new NFTs with our updated authority. Signing transactions within our dapp raises security concerns, as it could potentially expose our private keys to malicious actors.
What would be the best approach to address this security issue? How can we securely sign transactions within our dapp without risking the exposure of our private keys?
You can access the project code here: https://github.com/Giffen-good/fomo-bombs-dapp