monero requires senders to cryptographically generate a one-time address using the receiver's public address. although all transactions to a given public address end up in the same central wallet, an outside party can never know whether two transactions have been sent to the same public address.