If an account is not generated via PDA and is instead created as a new keypair, how should this new keypair be treated? Is it important to custody this somewhere secure?
As an example, an anchor example here generates foo
by:
const foo = anchor.web3.Keypair.generate();
foo
then is used to sign and create a new account creation instruction for the zero copy program.
To make the questions concrete:
- Does
foo
have any importance after the account has been generated? - What happens if
foo
is compromised (i.e. key pair is shared)? Will another user withfoo
be able do anything malicious? - Does the contract deployer knowing
foo
present any centralized risk in the future? If so, how does one mitigate that?
Thanks in advance!