On many token sale site I see workflow when user suggested to send ETH to one time address and it is changed each time I refreshing page. I am trying to understand how it implemented?
Only way I see is to have main contract that acts as factory that can create children contracts per request that only has fallback function that forwards incoming ETH,
msg.value to the main one. But this approach looks insecure - each subcontract creation takes gas and I potentially can exhaust main contract only by refreshing site's page and asking each time for new pay-in address.
Could you explain how it works?