From what I understand about Bitcoin, a wallet is really just a pair of public/private keys.
So, if someone needs to send me Bitcoins, all I need to do is just generate a pair or public/private keys using OpenSSL or some other tool, and send the public key to that person, without actually downloading a Bitcoin client (which will download a 12 GB block chain), or saving a wallet.dat
.
Am I correct?