If I'm developing a project on EOS that will require a new custom token I might want to do an airdrop of that token to existing EOS holders.
Are there best practices on how to go about that?
Roughly the steps to do this are:
- Iterate over all EOS addresses
- Log the amount of EOS on that address
- Finalize that snapshot
- Iterate over each address in the snapshot and issue new tokens
Questions include:
- What would one normally use to iterate over all EOS addresses? Code examples maybe?
- How do know which EOS addresses exist and have tokens?
- Can the snapshot be stored locally in a text file or should it be decentralized stored in a smart contract indexed table of some sorts?
- Best practices for the permissions of issuing new tokens? Could it be okay to have one person owning the private key to be able to issue just for the snapshot? Or are there better decentralized best practices?
- How would users best ensure that the owner of the token didn't cheat and issue themselves additional tokens across a bunch of new accounts?
Any answers to even some of these questions would be greatly appreciated. I hope this question can be the central resources for people that are looking to develop a new token and run an airdrop.