I would like to store tokens somewhere else than my wallet due to security reasons. I made a voting system contract and when more than 50% of authorized voters vote for yes, contract transfers limited amount of tokens from safe address to the admin wallet. So if the code is not bugged it's almost impossible to steal tokens, because it would need to hack 2 wallets (where voters' wallets are not associated with each other) at the same time.
function sendTokens(address pAddress, uint pAmount)
external onlyVotingContract
{
require(isAdmin(pAddress));
transferWorker(address(this), pAddress, pAmount);
}
My question is, can this successfuly work if I store tokens at 0x0 instead of address(this)? I must synchronize two contracts to set the same address of total tokens balance in the constructor, so the 0x0 would be the easiest way.